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

再次配置外接数据库,数据库数据导入成功

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM