Specified key was too long; max key length is 1000 bytes问题解决
今天使用帆软的报表平台管理,进行外接数据库配置,尝试多次一直提示数据导入失败
java的报错
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too long; max key length is 1000 bytes
总结了下出错的原因:
1.DB engine 是MyIsAm
2.字符集是 utf8 ,1个utf8=3bytes
3.最后就是 (100+255)*3>1000 所以报错
SHOW ENGINES
查了下解决方案有:修改DB engine 至 innodb;更改字符集;减小字段长度
我采用的解决方案是修改DB engine为innodb
修改mysql配置文件,my.ini下面部分
default-storage-engine=INNODB
重启mysql
再次配置外接数据库,数据库数据导入成功