繁体   English   中英

更改my.cnf文件中的innodb_page_size不会重新启动mysql数据库

[英]Changing innodb_page_size in my.cnf file does not restart mysql database

希望你有美好的一天。 我有一张包含470列的表格。 我正在进行Django单元测试,当我运行命令python manage.py test时,测试不会执行并给出错误:

行大小太大(> 8126)。 将某些列更改为TEXT或BLOB或使用ROW_FORMAT = DYNAMIC或ROW_FORMAT = COMPRESSED可能会有所帮助。 在当前行格式中,内联存储了768个字节的BLOB前缀

为了解决这个问题,我试图增加MySQL my.cnf文件中的innodb_page_size 当更改my.cnf文件中的值后重新启动MySQL服务器时,MySQL将不会重新启动。

我已经在stackoverflow上尝试了几乎所有可用的解决方案,但没有成功。

MYSQL版本= 5.5.57 Ubuntu版本= 16.04

任何帮助将不胜感激。 谢谢

由于我从未见过有人使用更大块大小的功能,因此我没有使它工作的经验。 而且我建议您不要首先尝试。

相反,我提供了几种可能的解决方法。

不要盲目使用VARCHAR(255) 使相关数据的长度切合实际。

不要将uf8(或utf8mb4)用于只能具有ascii的列。 例如:邮政编码,十六进制字符串,UUID,country_code等。请使用CHARACTER SET ascii

垂直分区表。 那就是将其吐入两个具有相同PRIMARY KEY表中。

不要跨列展开数组; 使用另一个表并在其中包含多个行。 例如:phone1,phone2,phone3。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM