mysql索引的索引長度問題: specified key was too long;max key length is 1000 bytes.
一、修改mysql的預設儲存引擎:
1、檢視mysql儲存引擎命令,在mysql>提示符下搞入show engines;字段 support為:default表示預設儲存引擎
2、設定innodb為預設引擎:在配置檔案my.cnf中的 [mysqld] 下面加入default-storage-engine=innodb 一句
3、重啟mysql伺服器:mysqladmin -u root -p shutdown或者service mysqld restart 登入mysql資料庫
二、修改表引擎
1、檢視資料庫表狀態
show table status from db_name where name='table_name';
2、修改資料庫表的引擎
alter table table_name engine=innodb;
附:對於mysql資料庫,如果你要使用事務以及行級鎖就必須使用innodb引擎。如果你要使用全文索引,那必須使用myisam。
MySQL索引的索引長度問題
mysql的每個單錶中所建立的索引長度是有限制的,且對不同儲存引擎下的表有不同的限制。在myisam表中,建立組合索引時,建立的索引長度不能超過1000,注意這裡索引的長度的計算是根據表字段設定的長度來標量的,例如 create table test id int,name1 varchar 300...
mysql 索引長度
specified key was too long max key length is 767 bytes mysql在innodb引擎下的主鍵索引或者unique索引的最大長度為767bytes,在myisam下是1000bytes。當時我在建立unique索引的時候使用了兩個varchar 2...
mysql索引長度
大家應該知道innodb單列索引長度不能超過767bytes,聯合索引還有乙個限制是長度不能超過3072。mysql createtable tb a varchar 255 defaultnull,b varchar 255 defaultnull,c varchar 255 defaultnul...