[阿里云]记DTS迁移错误Specified key was too lang

2018年5月10日16:34:38 发表评论 1,801 views
本文最后更新于2018年6月26日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!

问题

本地自建数据库,通过DTS迁移至阿里云RDS,结构迁移过程中报错Specified key was too lang

截图

[阿里云]记DTS迁移错误Specified key was too lang

解决

其实从上面的报错中我们已经能看是因为索引达到长度限制,mysql 在创建单列索引的时候对列的长度是有限制的 myisam和innodb存储引擎下长度限制分别为1000 bytes和767 bytes

 

1、针对RDS,只需启用innodb_large_prefix参数即可

[阿里云]记DTS迁移错误Specified key was too lang

修改完成后,待生效,点击DTS中的立即修复即可

[阿里云]记DTS迁移错误Specified key was too lang

2、针对自建MySQL

using col_name(length) syntax to specify an index prefix length.

对列的前面某部分创建索引

  • 微信小程序
  • 关注微信小程序
  • weinxin
  • 微信公众号
  • 关注微信公众号
  • weinxin
Wangxiao

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: