ERROR app.wsutils 419 INCRON: Error: ('HY000', '[HY000] [MySQL][ODBC 5.2(w) Driver][mysqld-5.7.7-rc-log]Index column size too large. The maximum column size is 767 bytes. (1709) (SQLExecDirectW)')
網上查找解決方案是:
set global innodb_file_format = BARRACUDA; set global innodb_large_prefix = ON; create table test (........) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC;
或者:
innodb_file_format = Barracuda innodb_file_per_table = 1 innodb_large_prefix
還有一種情況是:創建表的時候出現的:解決方式是:刪除之前的索引:
原文鏈接:http://stackoverflow.com/questions/24853828/index-column-size-too-large-the-maximum-column-size-is-767-bytes-for-int-dat
摘錄:
CREATE TABLE IF NOT EXISTS `db`.`TAGS` ( `tag_id` INT( 11 ) NOT NULL , `tag_text` VARCHAR( 700 ) NULL , `date_added` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP , `xxx_id` INT( 11 ) NOT NULL COMMENT 'This is for ease of reference lookup later', `user_id` INT( 11 ) NOT NULL , `TAG_FACT_RELATION_relation_id` INT NOT NULL , PRIMARY KEY ( `tag_id` ) , UNIQUE INDEX `tag_UNIQUE` ( `tag_text` ASC ) , UNIQUE INDEX `tag_id_UNIQUE` ( `tag_id` ASC ) , INDEX `fk_TAGS_TAG_FACT_RELATION1_idx` ( `TAG_FACT_RELATION_relation_id` ASC ) , CONSTRAINT `fk_TAGS_TAG_FACT_RELATION1` FOREIGN KEY ( `TAG_FACT_RELATION_relation_id` ) REFERENCES `meepl`.`TAG_FACT_RELATION` ( `relation_id` ) ON DELETE NO ACTION ON UPDATE NO ACTION ) ENGINE = INNODB;
There error says:
#1709 - Index column size too large. The maximum column size is 767 bytes.
其他mysql官方:設置innodb :
https://dev.mysql.com/doc/refman/5.5/en/innodb-restrictions.html