web-dev-qa-db-ja.com

MySQL-1TBデータベースの最速の復元

MySQLデータベースとその1.5TBがあります。このためのレプリケーションをセットアップする必要があります。私は32コアCPUと250GBメモリを持っています。 mydumper/myloaderを使用してバックアップと復元を行っても、問題の復元に時間がかかります。

これが私のMySQL設定です:

innodb_buffer_pool_size =235G
bulk_insert_buffer_size = 5G
innodb_io_capacity = 4000
innodb_io_capacity_max = 8000
innodb_read_io_threads = 8
innodb_write_io_threads = 22
innodb_adaptive_hash_index = 0
innodb_old_blocks_pct = 45
tx_isolation = READ-UNCOMMITTED
innodb_purge_threads = 2
innodb_change_buffering = inserts
innodb_change_buffer_max_size = 30
query_cache_size = 0

myloader:

120 threads running to restore.
100000 queries per transaction.

しかし、それでも1日以上の手段をとっています。復元する可能性はありますか

2
Bhuvanesh

リストアを実行する「多すぎる」スレッドがある場合、スレッドは互いにつまずき、-mightは、使用するスレッド数が少ない場合よりも実行が遅くなります。

拡張機能 innodb_buffer_pool_instances=16

SSDを使用していると思いますか?そうでない場合、一部の設定が高すぎます。

I/Oバウンドの場合、おそらく高速化する方法はありません。を除いて...

将来的には、ダンプと復元の両方が1分程度になるようにLVMを設定することを検討してくださいマルチTBの場合でもダンプ。これは、OSとディスクのブロックレベルでの「書き込みのコピー」テクノロジーによるものです。

1
Rick James