當前位置:首頁 > IT技術 > 數據庫 > 正文

MYSQL單服務器遷移數據到集群
2021-09-08 12:38:42

1、導出單服務器整個數據庫中的所有數據:?

#mysqldump -p"123456" --all-databases --flush-logs --master-data=2 > /tmp/master.sql

或者只導出某個數據庫

#mysqldump -p"123456" --databases mysql > /tmp/mysql.sql

打開master.sql,注意到有如下文字
-- Position to start replication or point-in-time recovery from
-- CHANGE MASTER TO MASTER_LOG_FILE='binlog.000220', MASTER_LOG_POS=156;

2、集群中導入整個數據

#mysql -p"123456"
mysql> source /tmp/master.sql

3、現在可以停止單服務器數據庫了,避免數據變化,然后再導出從第一步執(zhí)行mysqldump到當前的數據變化。

#mysqlbinlog --no-defaults --start-position=156 /var/lib/mysql/binlog.000220 > /tmp/last.sql

4、再在集群中導入最后部分數據

#mysql -p"123456"
mysql> source /tmp/last.sql
如果有用戶或權限的變化,使用命令更新
mysql> flush privileges;

5、將所有APP的數據連接指向當前集群的服務地址

以上,完成MYSQL由單服務器向集群遷移。

本文摘自 :https://www.cnblogs.com/

開通會員,享受整站包年服務立即開通 >