我们刚刚从MySQL 5.1升级到5.5。过去需要大约3分钟才能将〜200k行插入带有3个索引的MyISAM表的插入脚本现在大约需要8分钟!删除索引可以解决问题!?
读取(选择)很好(5.5比5.1快)
索引行为有什么不同,或者是否有一些可能需要调整的古怪配置参数?
提前感谢任何指针!
Fedora 17,Mysql 5.5.29-log,16GB RAM
MyISAM密钥缓冲区= 4GB
MyISAM索引大小= ~800 MB
MyISAM表格大小= 4.4 GB
INNODB缓冲池= 8GB
INNODB表+索引大小= ~12GB
CREATE TABLE MY_TABLE
(MY_TABLE_ID
int(10)unsigned NOT NULL AUTO_INCREMENT,
FIELD_1
char(1)NOT NULL,
FIELD_2
int(11)NOT NULL,
FIELD_3
varchar(64)NOT NULL,
FIELD_4
varchar(64)DEFAULT NULL,
FIELD_5
varchar(64)DEFAULT NULL,
FIELD_6
varchar(8)DEFAULT NULL,
FIELD_7
varchar(64)DEFAULT NULL,
FIELD_8
varchar(64)DEFAULT NULL,
FIELD_9
varchar(64)DEFAULT NULL,
FIELD_10
varchar(16)DEFAULT NULL,
FIELD_11
varchar(124)DEFAULT NULL,
FIELD_12
varchar(124)DEFAULT NULL,
FIELD_13
varchar(124)DEFAULT NULL,
FIELD_14
varchar(32)DEFAULT NULL,
FIELD_15
varchar(32)DEFAULT NULL,
FIELD_16
varchar(64)DEFAULT NULL,
FIELD_17
varchar(64)DEFAULT NULL,
FIELD_18
varchar(64)DEFAULT NULL,
FIELD_19
varchar(64)DEFAULT NULL,
FIELD_20
char(1)DEFAULT NULL,
FIELD_21
文字,
FIELD_22
文字,
FIELD_23
文字,
FIELD_24
varchar(32)DEFAULT NULL,
FIELD_25
varchar(64)DEFAULT NULL,
FIELD_26
varchar(16)DEFAULT NULL,
FIELD_27
varchar(64)DEFAULT NULL,
FIELD_28
varchar(64)DEFAULT NULL,
FIELD_29
文字,
FIELD_30
int(11)NOT NULL,
FIELD_31
varchar(16)DEFAULT NULL,
FIELD_32
varchar(16)DEFAULT NULL,
CREATION_DATE
int(11)NOT NULL,
MODIFICATION_DATE
时间戳NULL DEFAULT NULL,
PRIMARY KEY(MY_TABLE_ID
),
KEY I_FIELD_4
(FIELD_4
),
KEY I_FIELD_2
(FIELD_2
),
KEY I_FIELD_3
(FIELD_3
)
)ENGINE = MyISAM DEFAULT CHARSET = latin1
答案 0 :(得分:0)
好吧,经过大量的故障排除后,问题被缩小到坏驱动器。不是MySQL 5.5。现在一切都很好,有不同的驱动器..
答案 1 :(得分:0)
RAM过于拥挤。
对于16GB RAM以及InnoDB和MyISAM的混合:
key_buffer_size = 1600M
innodb_buffer_pool_size = 6G