主備都是全新的恢復,主主搭建步驟
1.172.17.16.8 tar備份copy到跳板機14:42 16:23 100min
scp 172.17.16.8:/home/mysql/DBbackup/bk_newoa/20190116.tar /data/hua/
2. 從跳板機copy至172.19.53.149&53.150 16:32 15min
scp /data/hua/20190116.tar 172.19.53.149:/data/hua/
scp /data/hua/20190116.tar 172.19.53.150:/data/hua/
3.停例項172.19.53.149&53.150
4.將172.19.53.149&53.150 資料刪除 5min
rm -rf /data/mysql/db_newoa/data/*
5.將172.19.53.149&53.150解壓縮 6min
innobackupex --decompress --parallel=8 /data/hua/20190116/base_20190116
6.在172.19.53.149&53.150上應用資料 2min
innobackupex --apply-log /data/hua/20190116/base_20190116
7.在172.19.53.149&53.150上copy恢復 10min
innobackupex --defaults-file=/data/mysql/db_newoa/newoa.cnf --copy-back /data/hua/20190116/base_20190116
innobackupex --defaults-file=/data/mysql/db_newoa/newoa.cnf --move-back /data/hua/20190116/base_20190116
8.開啟資料庫
sh startup.sh
9.重做主從
172.19.53.149:
reset master;
reset slave all;
change master to master_host='172.19.53.150', MASTER_PORT=23308, master_user='repl', master_password='4%REplic', MASTER_AUTO_POSITION=1;
172.19.53.150:
reset master;
reset slave all;
備份檔案中找到 xtrabackup_slave_info 檔案,根據裡面內容執行,如果主從都為全新的庫,不需要重新設定gtid:
-- SET @@GLOBAL.GTID_PURGED='XXXX'; #執行這個必須gtid為空,先執行reset master
-- set global gtid_executed="7d58ee1a-93a0-11e7-8ff5-f44c7f785650:1-3,d2cf8b03-939f-11e7-99db-407d0f46034d:1-14193879"
change master to master_host='172.19.53.149', MASTER_PORT=23308, master_user='repl', master_password='4%REplic', MASTER_AUTO_POSITION=1;
start slave;
show slave status\G
如果不通,一般是帳號的問題(密碼不對?無訪問許可權...)
select * from mysql.slave_master_info\G; #檢視帳號密碼資訊repl
show grants for repl@'%';
select user,host from mysql.user; #檢視帳號許可權,如果有限定IP,則需要變更
update mysql.user set host='%' where user='repl';
還是不通,則為防火牆埠沒開啟
[root@mysqltest1 ~]#
firewall-cmd --zone=public --add-port=23301/tcp --permanent #開啟23301
success
[root@mysqltest1 ~]# firewall-cmd --reload #載入
success
[root@mysqltest1 ~]# firewall-cmd --zone=public --query-port=23301/tcp #檢視
yes
[root@mysqltest1 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2019-01-23 23:10:23 EST; 30min ago
Docs: man:firewalld(1)
Main PID: 4081 (firewalld)
CGroup: /system.slice/firewalld.service
異常ERROR:
1.Last_IO_Error: Fatal error: The slave I/O thread stops because master and slave have equal MySQL server
UUIDs; these UUIDs must be different for replication to work.
這是因為mysql2克隆的mysql1所以,UUID是一樣,我們只需要修改mysql2的UUID,重啟動mysql服務即可。
vi /data/mysql/db_order/data/auto.cnf 不要破壞UUID的格式,字母的地方是字母,數字的地方是數字,只面要變更其中的數字即可。
2.mysql> start slave;
ERROR 1872 (HY000): Slave failed to initialize relay log info structure from the repository
原因:檢查my.cnf,原來沒指定relay_log,mysql預設產生的relay_log名被該server上的另一個mysql slave佔用了。
修改名稱:
relay_log
=
/db/mysql56/logs/relay_98_3326
10.開啟keepalived
sudo systemctl restart keepalived
11.檢查
備註(reset master/reset slave all):
reset master刪除所有index file 中記錄的所有binlog 檔案,將日誌索引檔案清空,建立一個新的日誌檔案,這個命令通常僅僅用於第一次用於搭建主從關係的時的主庫.
注意
reset master 不同於purge binary log的兩處地方
1 reset master 將刪除日誌索引檔案中記錄的所有binlog檔案,建立一個新的日誌檔案 起始值從000001 開始,然而purge binary log 命令並不會修改記錄binlog的順序的數值
2 reset master 不能用於有任何slave 正在執行的主從關係的主庫。因為在slave 執行時刻 reset master 命令不被支援,reset master 將master 的binlog從000001 開始記錄,slave 記錄的master log 則是reset master 時主庫的最新的binlog,從庫會報錯無法找的指定的binlog檔案。
RESET SLAVE
reset slave 將使slave 忘記主從複製關係的位置資訊。該語句將被用於乾淨的啟動, 它刪除master.info檔案和relay-log.info 檔案以及所有的relay log 檔案並重新啟用一個新的relaylog檔案。
使用reset slave之前必須使用stop slave 命令將複製程式停止。
注 所有的relay log將被刪除不管他們是否被SQL thread程式完全應用(這種情況發生於備庫延遲以及在備庫執行了stop slave 命令),儲存複製連結資訊的master.info檔案將被立即清除,如果SQL thread 正在複製臨時表的過程中,執行了stop slave ,並且執行了reset slave,這些被複制的臨時表將被刪除。
RESET SLAVE ALL
在 5.6 版本中
reset slave 並不會清理儲存於記憶體中的複製資訊比如 master host, master port, master user, or master password,也就是說如果沒有使用change master 命令做重新定向,執行start slave 還是會指向舊的master 上面。
當從庫執行reset slave之後,將mysqld shutdown 複製引數將被重置。
在5.6.3 版本以及以後 使用使用 RESET SLAVE ALL 來完全的
清理複製連線引數資訊。
(Bug #11809016)
RESET SLAVE ALL does not clear the IGNORE_SERVER_IDS list set by CHANGE MASTER TO. This issue is fixed in MySQL 5.7. (Bug #18816897)
In MySQL 5.6.7 and later, RESET SLAVE causes an implicit commit of an ongoing transaction. See Section 13.3.3, “Statements That Cause an Implicit Commit”.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7836221/viewspace-2658757/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【MySQL】MySQL Replication 一主一備搭建步驟(GTID方式)MySql
- 【MySQL】MySQL Replication 一主一備搭建步驟(傳統方式)MySql
- mysql主從配置,主從伺服器都是全新安裝myql的情景MySql伺服器
- 用一臺虛擬主機搭建網站步驟?網站
- MySQL叢集搭建(1)-主備搭建MySql
- MYSQL5.6.40原始碼安裝 主從搭建 主主搭建MySql原始碼
- Linux雲主機安全入侵排查步驟Linux
- mysql主從和主備的區別MySql
- Polardb資料庫掛庫後,如何恢復主備關係資料庫
- edge主頁被篡改怎麼恢復 edge瀏覽器主頁恢復花園方法介紹瀏覽器
- Docker 搭建KingbaseES主備流複製Docker
- 雲主機如何搭建小程式?恆訊科技分享三個步驟
- MySQL 主備MySql
- DM8 MPP主備環境搭建
- 災備建設中,跨主機叢集恢復技術應用
- keepalived 主備使用
- mysql主從搭建MySql
- Redis主從搭建Redis
- 怎樣在SQL Server搭建主從備份SQLServer
- DM8 實時主備環境搭建
- Redis主從複製工作原理和步驟介紹Redis
- mysql 5.7+keepalived主從切換步驟簡述MySql
- redis主從備份Redis
- MySQL異常恢復之無主鍵情況下innodb資料恢復的方法MySql資料恢復
- 【BASIS】SAP On Mssql恢復步驟SQL
- MySQL備份與主備配置MySql
- 基於etcd的選主功能實現的主備節點管理
- centos 搭建redis主從CentOSRedis
- MYSQL主從搭建5.6.38MySql
- DATA GUARD主庫丟失資料檔案的恢復(3)
- DATA GUARD主庫丟失資料檔案的恢復(1)
- DATA GUARD主庫丟失資料檔案的恢復(2)
- win10怎麼恢復ie瀏覽器主頁 ie主頁被360強制更改Win10瀏覽器
- MySQL-主從複製之搭建主資料庫MySql資料庫
- MySQL5.7 Master-Master主主搭建for Centos7MySqlASTCentOS
- linux svn server搭建、多專案管理及主備方案LinuxServer專案管理
- DM8 資料守護實時主備搭建
- Centos Mysql 主從備份CentOSMySql