MySQL 如何為一個非常大的資料庫設定一個備庫?
阿新 • • 發佈:2018-12-31
0. 安裝啟動備庫。
1. 分析資料庫資料分佈以及應用邏輯,找出append-only-table
,因為這樣的資料表都會很大。
2. 忽略append-only-table
,匯出資料庫:
mysqldump -uroot --ignore-table=db_name.append_only_table db_name > db_name_part.sql
3. 將資料匯入到備庫:
mysql -uroot db_name < db_name.sql
4. 設定備庫同步主庫:
mysql> change master to master_host='192.168.1.123',
master_user='replication_user',
master_password='helloworld',
master_log_file='bin.000001',
master_log_pos=0;
mysql> start slave;
5. 分批處理append-only-table
:
-- 匯出
mysqldump -uroot --single-transaction -t db_name append_only_table --where= "id > 0 and id < 1000000000" > append_only_table_0_1000000000.sql
-- 匯入
mysql -uroot db_name < append_only_table_0_1000000000.sql