MySQL 5.1到5.5升级导致显着的写入减速(MyISAM +索引)

时间:2013-01-24 00:48:17

标签: mysql myisam indexing

我们刚刚从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_4FIELD_4),
   KEY I_FIELD_2FIELD_2),
   KEY I_FIELD_3FIELD_3) )ENGINE = MyISAM DEFAULT CHARSET = latin1

2 个答案:

答案 0 :(得分:0)

好吧,经过大量的故障排除后,问题被缩小到坏驱动器。不是MySQL 5.5。现在一切都很好,有不同的驱动器..

答案 1 :(得分:0)

RAM过于拥挤。

对于16GB RAM以及InnoDB和MyISAM的混合:

key_buffer_size = 1600M
innodb_buffer_pool_size = 6G