mysql 在线热备_mysql主从配置,不停机热备xtrabackup

一、配置Master主服务器

(1)在Master MySQL上创建一个用户‘sync’,并允许其他Slave服务器可以通过远程访问Master,通过该用户读取二进制日志,实现数据同步。

mysql>create user sync; //创建新用户

mysql> GRANT REPLICATION SLAVE ON *.* TO 'sync'@'192.168.254.%' IDENTIFIED BY 'mysql';

#sync用户必须具有REPLICATION

SLAVE权限,除此之外没有必要添加不必要的权限,密码为mysql。说明一下192.168.254.%,这个配置是指明repl用户所在服务器,这里%是通配符,表示192.168.254.0-192.168.254.255的Server都可以以sync用户登陆主服务器。当然你也可以指定固定Ip。

(2)找到MySQL安装文件夹修改my.Ini文件。我们只要启动二进制日志log-bin就ok。

在[mysqld]下面增加下面几行代码

#by sxch

server-id=20

#给数据库服务的唯一标识,一般为大家设置服务器Ip的末尾号

log-bin=master-bin

log-bin-index=master-bin.index

#by sxch

重启mysql

service mysql restart

vim /etc/my.cnf

#by sxch

server-id=21

##给数据库服务的唯一标识,一般为大家设置服务器Ip的末尾号

log-bin=master-bin

log-bin-index=master-bin.index

#by sxch

在线热备复制

一 xtrabackup安装:

yum -y install perl perl-devel libaio libaio-devel perl-Time-HiRes perl-DBD-MySQL rsync

wget dachun.red/tools/numactl-2.0.9-2.el6.x86_64.rpm

wget dachun.red/tools/percona-xtrabackup-24-2.4.5-1.el6.x86_64.rpm

wget dachun.red/tools/libev-4.03-3.el6.x86_64.rpm

rpm -ivh numactl-2.0.9-2.el6.x86_64.rpm

rpm -ivh libev-4.03-3.el6.x86_64.rpm

rpm -ivh percona-xtrabackup-24-2.4.5-1.el6.x86_64.rpm

#软件下载地址:https://www.percona.com/software/mysql-database/percona-xtrabackup

二 核对mysql的版本:

利用xtrabackup做全备和恢复的,Mysql的版本最好一致!

三.在master服务器上在线备份数据库:

innobackupex --defaults-file=/etc/my.cnf --user=root --password=xxxx  /tmp/backup/

PS:/tmp/backup/ 为备份目录;

然后通过scp方式把master上

四.slave机器上操作;

1)关闭mysql服务;

然后清空mysql数据目录下文件

2)开始恢复数据

假设备份文件的路径在:/tmp/backup/2015-08-12_13-49-32/

恢复日志文件:

innobackupex --defaults-file=/etc/my.cnf --user=root --password=xxxx --apply-log /tmp/backup/2015-08-12_13-49-32/

恢复数据文件:

innobackupex --defaults-file=/etc/my.cnf --user=root --password=xxxx --copy-back /tmp/backup/2015-08-12_13-49-32/

以上操作,请务必按照顺序执行,操作顺序颠倒,会引起mysql服务器启动不了!

3)修改数据目录权限:

chown -R mysql:mysql  mysql

4)安全方式启动mysql,查看是否有异常;

mysqld_safe --defaults-file=/etc/my.cnf &

如果没有异常报错,就关闭mysql

mysqladmin -uroot -p shutdown

5)查看binlog日志文件的位置值,做主从同步:

cat /tmp/backup/2015-08-12_13-49-32/xtrabackup_binlog_info

mysql-bin.000293    1022022953

6)在slave机器上做主从相关操作:

CHANGE MASTER TO

MASTER_HOST='192.168.254.10',MASTER_USER='sync',MASTER_PASSWORD='mysql',MASTER_PORT=5506,MASTER_LOG_FILE='mysql-bin.000293',MASTER_LOG_POS=

1022022953;

启动主从同步:

start slave;

查看状态:

show slave status\G

Slave_IO_Running: Yes

Slave_SQL_Running: Yes

两个均为yes即代表正常。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值