Error 1701:Specified key was too long; max key length is 767 bytes

出现以上问题;
一 、先查看导出库与导入存储引擎

show variables like 'default_storage_engine';
show variables like 'storage_engine;

修改存储引擎语句

set global default_storage_engine="InnoDB"

设置存储引擎一致即可导入;若不想修改存储引擎,则按以下方式解决
二、再查库的字符集设置
将字符集设置为 :utf-8
排序规则设置为:utf8_general_ci
再重新导入,或重新执行sql
若字符集为:utf8mb4 -- UTF-8 Unicode
排序规则为:utf8mb4_general_ci
则执行以下命令:
查看数据库被限制了索引的大小

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;

再次导入或者执行sql即可

你可能感兴趣的:(Error 1701:Specified key was too long; max key length is 767 bytes)