2

MySQL 5.1 から 5.5 にアップグレードしました。3 つのインデックスを持つ MyISAM テーブルに最大 20 万行を挿入するのに最大 3 分かかっていた挿入スクリプトが、現在では最大 8 分かかります。インデックスを削除すると問題が解決します!?

読み取り (選択) は問題ありません (5.1 よりも 5.5 の方が高速です)

インデックスの動作に何か違いがありますか、それとも微調整が必​​要な奇妙な設定パラメータがあるのでしょうか?

ご指摘ありがとうございます。

システム情報:

Fedora 17、Mysql 5.5.29-log、16GB RAM

MyISAM キー バッファ = 4GB

MyISAM インデックス サイズ = ~800 MB

MyISAM テーブル サイズ = 4.4 GB

INNODB バッファ プール = 8GB

INNODB テーブル + インデックス サイズ = ~12GB

  • リクエストごとのテーブル定義は次のとおりです。

テーブルを作成MY_TABLE

( MY_TABLE_IDint(10) unsigned NOT NULL AUTO_INCREMENT、
FIELD_1char(1) NOT NULL、
FIELD_2int(11) NOT NULL、
FIELD_3varchar(64) NOT NULL、
FIELD_4varchar(64) DEFAULT NULL、
FIELD_5varchar(64) DEFAULT NULL、
FIELD_6varchar(8) DEFAULT NULL、
FIELD_7varchar(64) DEFAULT NULL、
FIELD_8varchar(64) DEFAULT NULL、
FIELD_9varchar(64) DEFAULT NULL、
FIELD_10varchar(16) DEFAULT NULL、
FIELD_11varchar(124) DEFAULT NULL、
FIELD_12varchar(124) DEFAULT NULL、
FIELD_13varchar(124) DEFAULT NULL ,
FIELD_14varchar(32) デフォルト NULL,
FIELD_15varchar(32) デフォルト NULL,
FIELD_16varchar(64) デフォルト NULL,
FIELD_17varchar(64) デフォルト NULL,
FIELD_18varchar(64) デフォルト NULL,
FIELD_19varchar(64) デフォルト NULL,
FIELD_20char(1) デフォルト NULL,
FIELD_21文章、
FIELD_22text,
FIELD_23text,
FIELD_24varchar(32) DEFAULT NULL,
FIELD_25varchar(64) DEFAULT NULL,
FIELD_26varchar(16) DEFAULT NULL,
FIELD_27varchar(64) DEFAULT NULL,
FIELD_28varchar(64) DEFAULT NULL,
FIELD_29text,
FIELD_30int(11) NOT NULL,
FIELD_31varchar( 16) DEFAULT NULL,
FIELD_32varchar(16) DEFAULT NULL,
CREATION_DATEint(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

4

2 に答える 2

0

RAM が混みすぎています。

16GB RAM と InnoDB と MyISAM の混合の場合:

key_buffer_size = 1600M
innodb_buffer_pool_size = 6G
于 2016-05-04T19:14:40.413 に答える
0

さて、多くのトラブルシューティングの後、問題は不良ドライブに絞り込まれました. MySQL 5.5 ではありません。別のドライブですべてが正常になりました..

于 2013-02-01T21:33:15.497 に答える