数十億ドルのMySQLデータベース単一のテーブルの数、バックアップ66ギガバイトの占有状況を格納したデータテーブル、削除、ロールバック記録

 

よりよい解決策がある場合にだけ、自分のアイデアや実践を記録ルーキーは、お互いから学ぶ、コメントすることができます。

その後、一定期間後に、データの量は、10以上の億万人に達した;プロジェクトの設計時間、設計キャッシュ同期履歴表の初めから今削除データに必要な、とさえ完全に削除; 66ギガバイトのサイズについて問題ありませんが、また書き込みに念のためバックアップおよびロールバックスクリプトなし。

単一テーブルのデータ量と、以下のよう:( DATA_LENGTHフィールド・テーブルデータベースクエリテーブル情報1024 3ギガバイトで除算した後のフィールドと行のサイズ、データ数のこの量(*)タイムアウトもmax_execution_timeに= 30000であったとしても)

 

バックアップとスクリプトを実行します。方法を考えるには、バックアップライブラリにテーブルcache_his remaneにこれで、次に新しいテーブルを作成したいです。

ロールバックスクリプトは次のとおりです。公式のリポジトリへのライブラリの名前を変更し、その後、削除などの新しいテーブルを作成し、テーブルをバックアップし、

たとえば、次のように削除すると、テーブルのバックアップがcache_hisです。

バックアップとスクリプトの効果を削除します(データベースとテーブル間の使用は(ドット)接続。)

新しいバックアップバックアップデータベーステーブル名TO RENAME TABLE公式データベーステーブル名を; ..効果がバックアップリポジトリに表形式的なライブラリとカットのデータを削除することです。

正式に改名テーブルデータベースバックアップリポジトリ.new_copy_cache_hisに.cache_his。 

その後、別のテーブルの結果を作成します。

正式なライブラリ.cache_hisがバックアップライブラリ.new_copy_cache_hisをIIKEテーブルを作成します。

こことバックアップが完了し削除します。

あなたはロールバックの問題に必要な場合は、単に新しいテーブルcache_hisを削除し、その後、同じ方法が正式にバックアップライブラリにライブラリの名前を変更するために、
例えば:

テーブルcache_hisをドロップし、新しいテーブルを削除、名前変更

正式なライブラリへのリネームテーブルのバックアップライブラリ.new_copy_cache_hisはに.cache_his

 

これは、データのバックアップの単一のテーブルに大量の比較的迅速に完了することができますし、ロールバックを削除し、ルーキーを、互いに学びコメントすることができ、より良い解決策がある場合にだけ、自分のアイデアや実践を記録します。

公開された301元の記事 197ウォンの賞賛 ビュー270 000 +

おすすめ

転載: blog.csdn.net/boss_way/article/details/102782697