Linux
MariaDB - Specified key was too long
올엠
2020. 11. 6. 14:00
반응형
Specified key was too long; max key length is 767 bytes
이는 InnoDB 엔진에 관련된 내용이다.
MariaDB, MySQL은 하나의 Row이 가질 수 있는 최대 Index 길이의 제한이 있고 이 제한이 767 Bytes 까지이다.
이 제한을 풀기 위해서는 set global innodb_large_prefix = ON; 이후 생성하고자 하는 테이블 옵션에 ROW_FORMAT=DYNAMIC 옵션을 추가하여 해결이 가능하다.
set global innodb_large_prefix = ON;
위 옵션이 정상적으로 실행되었다면 테이블을 만들때 엔진 옵션으로 DYNAMIC을 추가하면 정상적으로 테이블 생성이 가능하다.
ENGINE=INNODB ROW_FORMAT=DYNAMIC
dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html
MySQL :: MySQL 5.7 Reference Manual :: 14.15 InnoDB Startup Options and System Variables
dev.mysql.com
반응형