“Specified key was too long; max key xxx bytes”该怎么解决?
首先很明显地说明了设置的索引太长,太长就会导致性能问题,所以就提示咯。而对于varchar(200)以上字符的字段,没有必要做那么长的索引,可以阶段的(部分),修改为:
字段如下:
f_type int(11), f_key varchar(256), PRIMARY KEY(f_type,f_key(40))
备注:
这样修改之后可能有一些风险哦,因为作为主键必须唯一,可能出现问题的情况,毕竟只截断了40个字符….
对于InnoDB引擎的表,不建议你们使用此类组合模式做主键,性能会很差,建议数值类型的字段作主键,外加创建唯一索引的模式,例如:
id INT UNSIGNED AUTO_INCREMENT,f_type int(11), f_key varchar(256), PRIMARY KEY(ID),UNIQUE KEY(f_type,f_key(80))
相关推荐:
为现代 macOS 而生。 从架构到界面,IINA 只为现代 macOS 设计。它采用了 Yosemite 后的新设计语 […]
FileZilla是一个免费开源的FTP软件,分为客户端版本和服务器版本,具备所有的FTP软件功能。 可控性、有条理的界 […]
Mozilla Firefox,中文俗称“火狐”(正式缩写为Fx或fx,非正式缩写为FF),是一个自由及开放源代码的网页 […]
MindManager,中文商标译作C,俗称“脑图”,是一款创造、管理和交流思想的通用标准的绘图软件,由美国Mindje […]
MindManager,中文商标译作C,俗称“脑图”,是一款创造、管理和交流思想的通用标准的绘图软件,由美国Mindje […]
拿起手机扫一扫即可带走我!