0

AWS で実行されている mysql から巨大なテーブルをローカル マシンに取得することについて質問があります。サイズが 2.3 GB のテーブルを作成しましたが、ディスクの空き容量が 2 GB しかありません。これにより、テーブルをダンプ ファイルにダンプすることさえできず、エラー 28 が発生するという状況が発生します。次に、2 つの選択肢があります。

  1. 300 MB 以上の空き容量でディスクをクリーンアップします。削除できるものはすべて削除しようとしました。私は 2.5G のデータベースしか持っていませんが、mysqldb1 は最大 4GB のサイズを必要とします。

    ubuntu@ip-10-60-125-122:~$ df -h
    Filesystem      Size  Used Avail Use% Mounted on
    /dev/xvda1      8.0G  5.6G  2.0G  74% /
    udev            819M   12K  819M   1% /dev
    tmpfs           331M  184K  331M   1% /run
    none            5.0M     0  5.0M   0% /run/lock
    none            827M     0  827M   0% /run/shm
    /dev/xvdb       147G  188M  140G   1% /mnt
    
  2. テーブルを 2 つ以上の異なるテーブルに分割し、それらを別々にダンプして、後でそれらをまとめることができます。

私は mysql が初めてで、安全で簡単な解決策が提供されることを願っています。

よろしくお願いします。質問を改善するために何かできることがあればお知らせください。

4

1 に答える 1

0

実際にデータベースにそれほど多くのデータが保存されていないことが確実な場合は、SO に関するこの他の質問をご覧になることをお勧めします。

テーブルからデータ行を削除した後、MySQL InnoDB がディスク領域を解放しない

デフォルトでは、データを削除しても MySQL はファイル サイズを縮小しません。MySQL がテーブルごとのファイル用に構成されている場合、データベースを最適化することでデータを削減できるはずです。それ以外の場合は、すべてのデータを別のマシンに取得し、テーブルごとのファイルを構成してデータベースを再作成する必要があります。

于 2013-02-16T22:08:05.877 に答える