查看数据库是否限制了索引的大小:
show variables like 'innodb_large_prefix'.
如果值为off,使用
set global INNODB_LARGE_PREFIX=on;
查看innodb_file_format引擎类型是不是BARRACUDA,
show variables like 'innodb_file_format'
如果不是,使用
set global innodb_file_format=BARRACUDA;
最后,使用navicat等数据库操作工具,先导出sql,再执行sql的形式完成数据转储.
如果使用了navicat,需要设置传输的值为最大值,在工具->服务器监控,选择对应的数据库找到数据库变量max_allowed_packet。进行修改。