またテーブルのクラッシュ。mysqlのテーブルがクラッシュする頻度が激増してきた。以前はこんなことなかったのだが・・・。今は一日一回発生して絶えず見張っていなければならないという状態になってしまっている。バルク品のメモリを使っているというのがなんか怪しくなってきた。mysqlのチューニングをしてちょっとロースペック用の設定にしてテストしてみる。
Tag: mysql
myisamchkの修復時に作成されるTMDファイル
テーブルの修復をしようとしたらtempfileが作成できないという下記のエラーが発生した。
Table 'テーブル' is marked as crashed and should be repaired
データベースへ接続してsqlを実行したときに
Table 'テーブル' is marked as crashed and should be repaired
というエラーが返ってきた。エラーの内容はテーブルがクラッシュしているから修復すべきということらしいが、そのテーブルは一度クラッシュしたのを修復を終えたばかりなのだが・・・。もう一度実行してみると何事もなくsqlの結果が返ってきた。どうも動作が不安定になっているような予感。レコード数が5000万近くあるので気軽に修復するというわけにはいかないんだが。
mysqlのテーブルのクラッシュ
/usr/local/mysql/bin/myisamchk --recover --force --sort_buffer_size=2048M /usr/local/mysql/data/auc/200902.MYI
これでmysqlのテーブルがクラッシュしたのは2回目。前回は先月の中ごろだったので修復してから1ヶ月しかもたなかった。前回の修復作業はかなりの疲労を伴った。テーブルのレコード数が膨大であるためにいつ終わるのか見当もつかないから。テーブルのレコード数が4000万でそのうち4つのフィールドにインデックスが作成されている。結局、修復にかかる時間は前回の作業で20時間ほどかかった。今回はレコード数がそれより1000万増えているため、修復にかかる時間はさらに要することが予想される。