ロックを使用しないようにmysqlテーブルを最適化するにはどうすればよいですか?常にロックを解除するようにテーブルを変更できますか?ロックを避けるためにmysqlテーブルを最適化する
状況:
15Mレコードのデータベースを使用するアプリがあります。 1週間のスクリプトが20時間、何らかのタスク(挿入/更新/削除)を実行し、フロントエンド(Webサーバー)にデータを送信するアプリケーションサーバーで、それは問題ありません。
問題:月に1回、テーブルを最適化する必要があります。膨大な数のレコードがあるため、このタスクを完了するまでに1〜2時間かかります(mysqlコマンドラインまたはphpMyAdminからの最適化を開始します)。期間のMySQLは、フロントエンドにデータを提供していない(私はそれが最適化のためのテーブルをロックする程度であると仮定)
質問:
だけそう(データのない挿入または更新を読んでいないがあるので、ロックを避けるためにテーブルをoptmizeする方法)ので、私は最適化しながら、このケースでは何のダメージを与えることができないロックを解除すると思いますか?
それはInnodb/MySAMテーブルですか?大きな影響を与えるでしょう – Madhu