- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我遇到了一些问题。
你看,我已经使用 WAMP 在本地创建了一个 WordPress 网站,一切似乎都工作正常,直到我尝试将 MySQL 数据库导入到新的实时网站时出现错误:
“#1709 - 索引列大小太大,最大列大小为 767 字节”
现在我在这里找到了可能导致此问题的一些答案:
MySQL error: The maximum column size is 767 bytes
这里:
mysql change innodb_large_prefix
尽管我了解需要以代码方式实现什么,但我并不知道代码实际需要放置在哪里。
除了导入、导出和编辑数据库凭据之外,我从来不需要使用 MySQL 做任何其他事情,这对我来说有点陌生。尽管我非常乐意稍后更深入地研究它,但此时我只想让我的实时网站正常运行。
最佳答案
好吧,我想通了,显然我必须编辑 SQL 文件本身,并且必须在每个使用 INNODB 引擎的 CREATE TABLE 查询的末尾添加 ROW_FORMAT=DYNAMIC
。
所以我改变了这个:
CREATE TABLE `xxx` (
`visit_id` bigint(20) NOT NULL AUTO_INCREMENT,
`visitor_cookie` mediumtext NOT NULL,
`user_id` bigint(20) NOT NULL,
`subscriber_id` bigint(20) NOT NULL,
`url` mediumtext NOT NULL,
`ip` tinytext NOT NULL,
`date` datetime NOT NULL,
PRIMARY KEY (`visit_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
进入
CREATE TABLE `xxx` (
`visit_id` bigint(20) NOT NULL AUTO_INCREMENT,
`visitor_cookie` mediumtext NOT NULL,
`user_id` bigint(20) NOT NULL,
`subscriber_id` bigint(20) NOT NULL,
`url` mediumtext NOT NULL,
`ip` tinytext NOT NULL,
`date` datetime NOT NULL,
PRIMARY KEY (`visit_id`)
) ROW_FORMAT=DYNAMIC ENGINE=InnoDB DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
然后我将文件重新导入到本地服务器上,然后对实时服务器进行了新的导出......现在它终于上线了......
我仍然觉得有点奇怪,一旦超过一定数量的字符(747),mySQL 不会自动将行设置为动态,并且它仍然可以在现有数据库中工作,尽管它不应该工作......但也许 WAMP 只是与实时服务器有不同的环境设置。
无论如何,谢谢大家!
关于mysql - innodb_large_prefix 在哪里添加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50947260/
我遇到了一些问题。 你看,我已经使用 WAMP 在本地创建了一个 WordPress 网站,一切似乎都工作正常,直到我尝试将 MySQL 数据库导入到新的实时网站时出现错误: “#1709 - 索引列
我只是在虚拟机上安装了 debian 8.3 并在此之后安装了 xampp Tutorial .一切正常,直到我尝试创建一个新表: create table testtable ( id int(
我在 Debian Linux 上运行 MySQL 5.5.55,我想启用 innodb_large_prefix 设置,这样我就可以拥有大于 767 字节的表索引。 我的/etc/mysql/my.
我是一名优秀的程序员,十分优秀!