Alibaba Cloud MySQL スペースをクリーンアップする方法

Alibaba Cloud MySQL スペースをクリーンアップする方法

今日、Alibaba Cloudからディスク警告通知を受け取りました。確認したところ、100Gのスペースのうち80Gが使用されていました。2018年1月1日までにデータを削除することにした場合、削除後に使用可能なディスク容量が減るのではなく、急速に増加していることがわかります。これは私を非常に不安にさせ、データベースはすぐにロックされました。

すぐにBaiduで検索したところ、削除してもディスクは減らず、 OPTIMIZE TABLE +表名を実行する必要があることがわかりました。その後、救世主を見つけましたが、コマンドは失敗しました。スペースが不足していることが判明しました。データベースがロックされており、このコマンドは実行できませんでした。途方に暮れ、まずはサーバーを一時停止することにしました。一時停止したとき、奇跡が起こりました。使用可能なスペースが5G以上あったので、 OPTIMIZE TABLEを実行してテーブルを最適化することができました。しかし、実行から3分後、コマンドはエラーを返しました。再びスペースが不足し、テーブルが再びロックされていることがわかりました。

最終決定は、テーブルをエクスポートして SQL ファイルに転送することでした。エクスポートが完了するまでに 40 分かかりました。その後、テーブルを削除しました。突然、サーバーの空き容量が 50G 増えました。そこで、SQL ファイルを再度実行してデータを復元しましたが、これには 150 分もかかりました。実行後、70Gのディスク容量を使用しました。次に、 OPTIMIZE TABLE +表名実行しました。テーブルの一つが大きすぎたため、実行に40分近くかかりました。この間、ディスク使用率は一時100%まで急上昇しましたが、幸いにもそのまま過ぎました。

データを削除しても、MySQL のスペースは減りません。 OPTIMIZE TABLEを実行する必要があります。 OPTIMIZE TABLE は大量の一時ファイルを生成します。元のテーブルが大きい場合は、多くのスペースを占有します。したがって、このコマンドを実行するときは、十分なディスク容量があることを確認してください。そうしないと、他の操作を実行するとディスク容量が不足し、データベースがロックされ、実行が失敗する可能性があります。

要約する

以上がこの記事の全内容です。この記事の内容が皆様の勉強や仕事に何らかの参考学習価値をもたらすことを願います。123WORDPRESS.COM をご愛顧いただき、誠にありがとうございます。これについてもっと知りたい場合は、次のリンクをご覧ください。

以下もご興味があるかもしれません:
  • MySQLのスペースをクリーンアップするいくつかの具体的な方法

<<:  Navicatは機能ソリューション共有を作成できません

>>:  クリックナンバーゲームを実装するネイティブJS

推薦する

DockerでPrometheusをインストールする詳細なチュートリアル

目次1. Node Exporterをインストールする2. cAdvisorをインストールする3. ...

Linux で Spring Boot プロジェクトを開始および停止するためのスクリプトの例

Springboot プロジェクトを開始するには、次の 3 つの方法があります。 1. メインメソッ...

DockerでMySQLマスタースレーブ環境を構築する方法の詳しい説明

序文この記事では、docker-compose と dockerfile を使用して、binlog ...

CSS3 で King of Glory マッチング人員読み込みページを実装する方法

King of Glory をプレイしたことがある人なら、このページの効果をよくご存知でしょう。なぜ...

Vueはデータを初期状態にリセットします

場合によっては、データ内のデータを再利用する必要がありますが、データ内のデータはさまざまなフォーム、...

MySQL カウントを向上させる方法のまとめ

多くのプログラマーは MySQL に精通していると思います。多くの人が count の使い方と、最適...

MySQL 8.0.25 解凍版のインストールと設定方法のグラフィックチュートリアル

MySQL 8.0.25解凍版のインストールチュートリアル、参考までに具体的な内容は以下のとおりです...

Echart Bar の 2 列チャート スタイルの最も完全な詳細な説明

目次序文インストールと設定1. Echartsをインストールする2. Echartsをグローバルに導...

TypeScript の関数

目次1. 関数の定義1.1 JavaScript の関数1.2 TypeScriptの関数2. オプ...

Vueコンポーネントの再利用と拡張の詳細な説明

目次概要延長は必要ですか?スロットJavaScript ユーティリティ関数拡張コンポーネントの複数の...

Reactにおけるコンテキスト適用シナリオの分析

コンテキストの定義と目的コンテキストは、コンポーネント ツリーにプロパティを明示的に渡すことなく、コ...

Vueはel-tableを使用して列と行を動的に結合します

この記事の例では、el-tableを使用して列と行を動的にマージするVueの具体的なコードを参考まで...

JavaScript で一意の ID を生成するいくつかの方法

考えられる解決策1. Math.randomは[0,1)の範囲の乱数を生成します。 //今回は生成さ...

Linux ネットワークプログラミングにおけるソケットオプションの実装

ソケットオプション機能機能: ソケットファイル記述子の属性の読み取りと設定に使用されるメソッド #i...

Javascript サンプル プロジェクトでの虫眼鏡効果の実装プロセス

目次序文事例: JD.com の虫眼鏡効果の模倣オフセットシリーズクライアントシリーズスクロールシリ...