Xtrabackup搭建主從
利用innobackupex搭建MySQL從庫
知識準備:
1、在備份InnoDB的過程中,記錄的變更保存於xtrabackup_logfile文件,所以在prepare(–apply-log)的時候,需要重放該部分數據到表空間。
2、如果庫中只使用了innodb或者XtraDB引擎,恢復的時候使用xtrabackup_binlog_pos_innodb文件確定pos信息;
3、如果還有其他引擎(如MyISAM),恢復的時候使用xtrabackup_binlog_info確定pos信息;
4、innobackupex的過程圖示
將xtrabackup_logfile中的日誌進行重做
1.這主庫上進行全備,然後進行prepare
backup
[[email protected] 2017-05-22_07-24-07]# innobackupex --defaults-file=‘/etc/my.cnf‘ --user=root [email protected]
prepare
[[email protected] opt]#innobackupex --defaults-file=‘/etc/my.cnf‘ --apply-log 2017-05-26_15-53-59/
2.將備份進行壓縮,拷貝到slave
tar -czvf 2017-05-26_15-53-59-mysql.tar.gz 2017-05-26_15-53-59/ scp mysql_full_backup.tar.gz [email protected]:/path/
3.在master創建復制用戶
grant replication slave on *.* to [email protected]%‘ identified by ‘replication‘; flush privileges;
4.配置slave
[[email protected] data]# cat xtrabackup_binlog_info mysql-bin.000006 216752542 stop slave; CHANGE MASTER TO MASTER_HOST=‘192.168.21.161‘, MASTER_PORT=3306, MASTER_USER=‘rep‘, MASTER_PASSWORD=‘replication‘, MASTER_LOG_FILE=‘mysql-bin.000006‘, MASTER_LOG_POS=216752542; start slave; show slave status\G *************************** 1. row *************************** Slave_IO_State: Waiting for master to send event Master_Host: 192.168.21.161 Master_User: rep Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000006 Read_Master_Log_Pos: 216816993 Relay_Log_File: beiyong-server-relay-bin.000002 Relay_Log_Pos: 64734 Relay_Master_Log_File: mysql-bin.000006 Slave_IO_Running: Yes Slave_SQL_Running: Yes .... //利用innobackupex搭建MySQL從庫 結束。
本文出自 “zhagyilig” 博客,請務必保留此出處http://zhagyilig.blog.51cto.com/10900500/1931010
Xtrabackup搭建主從