Linux · 2015-06-06

MySQL不中断在线添加从库


#全备份(这数据不能直接用的,或许有未提交的事务或者事务还在日志里并未写入硬盘)
$Master: innobackupex --user='root' --password='$Password' --defaults-file=/etc/my.cnf /data/test/fulltest --socket=/tmp/mysql.sock 

#apply-log(apply log后的数据才可直接使用)
$Master: innobackupex --apply-log /data/test/fulltest/2015-06-04_16-41-51/

#恢复
$Slave:清空New_Slave的datadir

#移动ib_logfile文件到MySQL的log文件夹
$Slave:mv ib_logfile* /path/to/mysql/log/

#修改my.cnf
修改server-id=xx

#启动mysql服务
$Slave:service mysqld start

#查看文件xtrabackup_binlog_info查看binlog位置并change master;
$Slave:CHANGE MASTER TO MASTER_HOST='$masterip', MASTER_PORT=3306,MASTER_USER='$repl_user',MASTER_PASSWORD='$slavepass',MASTER_LOG_FILE='$bin.000001',MASTER_LOG_POS=481;

#启动从库服务
$Slave:slave start

参考:percona-xtrabackup-setting_up_replication