重新配置MySQL主從服務器步驟


1.重啟MySQL從服務器的mysql數據庫:
登錄從服務器執行命令:#service mysqld restart

2.停止從數據庫mysql上slave服務器的主從同步:
為了防止主從數據不同步,需要先停止slave上的同步服務。
登錄從數據庫mysql,執行命令:#mysql -uroot -p
然后執行:>STOP SLAVE;

3.對主服務器上主master數據庫服務器的數據加鎖:
為了避免在備份的時候對數據庫進行更新操作,必須對數據庫加鎖。
登錄從數據庫mysql,執行命令:#mysql -uroot -p
然后執行:>FLUSH TABLES WITH READ LOCK;
ps:如果是web服務器也可以關閉Apache和Nginx服務,效果是一樣的。

4.備份主服務器master數據庫的數據
執行命令:#mysqldump -u slaveusername  -p p2p > back.sql.gz
然后可以通過命令:#gunzip back.sql.gz 進行解壓

5.重置master服務
登錄從數據庫mysql,執行命令:#mysql -uroot -p
然后執行:>RESET MASTER;
重置master服務的目是刪除所有的二進制日志,創建一個.000001的空日志。
RESET MASTER並不會影響SLAVE服務器上的工作狀態,但盲目的執行這個命令
會導致slave找不到master的binlog,造成同步失敗。當前我們正是要重置同步,
所以必須要執行它。

6.對master服務器的數據庫解鎖
執行:>UNLOCK TABLES;
ps;如果你停止了Apache和Nginx,請開啟它們。

7.將master上的備份文件拷貝到slave服務器上
scp -r root@[slave的ip地址] ~/back.sql :/home

8.刪除slave服務器上的舊數據
ps:刪除之前請務必確認該備份的是否都備份了。
登錄從數據庫mysql,執行命令:#mysql -uroot -p
然后執行:>DROP DATABASE p2p;

9.導入數據到slave服務器上
執行:>SOURCE /home/back.sql;
或者直接執行命令:#mysql -u root -p p2p < 文件名

10.重置slave服務
執行:>RESET SLAVE;
執行RESET SLAVE的目的是清除slave上的同步位置,刪除所有舊的同步日志,
使用新的日志重新開始。
ps:執行RESET SLAVE之前必須先停止slave服務(STOP SLAVE),在第二步以停止了它。

11.開啟slave服務
執行:>START SLAVE;

12.在slave服務器上檢查同步狀態
執行:>SHOW SLAVE STATUS\G
檢查同步狀態是否成功。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM