400 万行の MyISAM テーブルを持つ MySQL データベースがあります。このテーブルを週に 1 回、約 2000 の新しい行で更新します。更新後、次のようにテーブルを変更します。
ALTER TABLE x ORDER BY PK DESC
主キー フィールドの降順でテーブルを並べ替えます。これにより、私の開発マシン (3 GB メモリの Windows) では問題が発生しませんでした。実動 Linux サーバー (512MB の RAM を使用し、毎回約 6 分で結果のソート済みテーブルを達成する) で 3 回成功裏に試しましたが、最後に試したときは、約 30 分後にクエリを停止して、クエリを再構築する必要がありました。バックアップからのデータベース。
512MB のサーバーは、このような大きなテーブルでのその変更ステートメントに対処できますか? ALTER TABLE コマンドを実行するために一時テーブルが作成されることを読みました。
質問: この変更コマンドは安全に実行できますか? テーブルの変更に予想される時間は?