「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > MySQL ibdata1 ファイルのサイズを減らすにはどうすればよいですか?

MySQL ibdata1 ファイルのサイズを減らすにはどうすればよいですか?

2024 年 12 月 21 日に公開
ブラウズ:401

How Can I Reduce the Size of My MySQL ibdata1 File?

MySQL の ibdata1 ファイルのパージと縮小[&​​&&]

R でのデータ分析に MySQL を利用しているときに、ibdata1 ファイルのサイズが大きくなるという問題が発生する可能性があります。データが保存されていないにもかかわらず、過度に増加します。この記事では、この問題に対処し、包括的な解決策を提供します。

ibdata1 ファイルの増大の原因

ibdata1 ファイルには、共有テーブルスペースに格納されているテーブルのデータとインデックスが含まれています。デフォルトでは、MySQL はすべてのテーブルをこの 1 つのファイルに保存するため、ファイルは継続的に拡張されます。データベースとテーブルを削除すると、サーバーからメタデータが削除されるだけで、ファイル自体は変更されません。

解決策: テーブルごとに個別のファイルを有効にする

ibdata1 を回避するにはファイルが過度に大きくならないようにするには、各テーブルとそのインデックスを別個のファイルとして保存するように MySQL を設定します。これは、MySQL 5.6.6 以降のバージョンではデフォルトで有効になりました。以前のバージョンを使用している場合は、my.cnf ファイルに次の行を追加します:

[mysqld] innodb_file_per_table=1
[mysqld]
innodb_file_per_table=1
これにより、新しく作成されたデータベースとテーブルが ibdata1 ではなく別の ibd* ファイルを使用するようになります。

ibdata1 からのスペースを再利用する

To ibdata1 が占有しているスペースを解放するには、次の手順に従います:

    ダンプmysql とパフォーマンス スキーマを除くすべてのデータベース。
  1. mysql とパフォーマンス スキーマを除くすべてのデータベースを削除します。
  2. MySQL を停止します。
  3. ibdata1 および ib_log ファイルを削除します。
  4. 開始MySQL.
  5. ダンプされたものを復元しますデータベース。
このプロセスではすべてのテーブルとデータが削除されるため、続行する前に必要な情報をバックアップしていることを確認してください。

情報スキーマに関する注意

information_schema は、実際のテーブルではなく、読み取り専用ビューのコレクションです。これはディスク上のファイルを占有せず、MySQL の再起動時に再生成されます。したがって、これを削除しても ibdata1 ファイル サイズには影響しません。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3