mysql在執行指令碼時,報出了以下錯誤:
index column size too large. the maximum column size is 767 bytes
原因:
INNODB 引擎,UTF-8,主鍵字串 預設最大 767,需要修改
解決方案:
1. 對資料庫進行設定
set global innodb_file_format = BARRACUDA
set global innodb_large_prefix = ON
注意: 在navicat中執行成功,不清楚重啟資料庫是否還有效
檢視是否生效
show variables like ‘character%’;
show variables like ‘collation_%’;
show variables like ‘innodb_large_prefix’;
show variables like ‘innodb_file_format’;
2. 對指令碼進行修改,新增ROW_FORMAT=DYNAMIC
create table test (……..) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
參考文章:
stackoverflow.com/questions/307618...
轉載直接來源:
blog.csdn.net/pansanday/article/de...
本作品採用《CC 協議》,轉載必須註明作者和本文連結