各務 洋
kagam****@outwa*****
2018年 8月 31日 (金) 19:37:50 JST
三井様。 お世話になります、各務です。 > インデックス再作成のハードルが少し高いですが、調整してみたいと思います。 えーと、商用環境の場合、 >> ALTER TABLE table DISABLE KEYS; >> ALTER TABLE table ENABLE KEYS; を実行するなら、サービスをメンテナンス状態にしないといけない気がします。 メモリとディスクが許せばですが、更新処理を止めた状態で同構造の仮テーブ ルを作成。 現テーブルから仮テーブルに流し込んで Replication も何もかも落ち着いたら、 ALTER TABLE 現テーブル RENAME 壊テーブル; ALTER TABLE 仮テーブル RENAME 現テーブル; で、運用中のまま修復を行う事も検討できるのではないかと思います。 いずれにせよ、商用のデーターで何回か検証されるのが良いと思います。 > 仮にインデックス破損だった場合、商用のデータをmysqldumpで取得すれば、 > 別環境で再現出来ますでしょうか。 残念ながら再現出来ない事が大半だと思います。 商用環境で上記の仮テーブルを作成し、Match する対象のレコードだけを入れ て仮テーブルを SELECT しても、期待通りに Hit すると思います。 ( Hit しなければ、破損の度合いが大きい可能性) 逆にどこでも再現するなら、その手順や dump を渡す事が可能でしたら直して もらえる可能性が高いと思いますよ。 ---- 各務 kagam****@outwa*****