Centos 7 系统Mysql 数据库主从同步 之 数据库备份与配置

1、使用Xtrabackup 全备主库数据

创建一个备份存贮目录(要与数据的大小相同或者比较大)

[root@servicel06 donghua]# mkdir /opt/donghua/backup -p
[root@servicel06 donghua]# innobackupex --defaults-file=/etc/my.cnf --user=root  --parallel=2 --throttle=200 --backup /opt/donghua/backup --socket /tmp/mysql.sock
[root@servicel06 donghua]# 

–defaults-file=/etc/my.cnf 为mysql的配置文件my.cnf
【备注:】
自己写的脚本文件(主数据库172.16.97.137)backup.sh

#!/bin/bash

#innobackupex --defaults-file=/opt/donghua2/mysql/my.cnf --user=root  --parallel=2 --throttle=200 --backup /opt/donghua/backup --socket /tmp/mysql.sock & 

#sshpass -p "donghua"  scp  -r backup  donghua@172.16.97.151:/opt/donghua/ &
#sshpass -p "donghua" scp  -r backup donghua@172.16.97.161:/opt/donghua/ &
sshpass -p "artogrid" scp  -r backup artogrid@172.16.138.32:/opt/donghua/ &

2、把主库的全备数据拷贝到从库

[root@servicel06 donghua]# scp  -r backup donghua@172.16.97.151:/opt/donghua/

3、停止从库mysql,并移除数据库目录,然后创建一个新的数据库目录

data 目录为mysql的数据目录,一般路径配置在 my.cnf 中的datadir 参数中
[root@servicel06 donghua]# service mysqld stop
[root@servicel06 donghua]# mv /opt/donghua/mysql/data /opt/donghua/mysql/data_bak
[root@servicel06 donghua]# mkdir /opt/donghua/mysql/data -p
[root@servicel06 donghua]# 

4、在从库中,把拷贝过来的全备数据文件 重新提交一下事务。

[root@servicel06 donghua]# innobackupex --defaults-file=/etc/my.cnf  --user=root --socket=/tmp/mysql.sock  --datadir=/opt/donghua/mysql/data/ --apply-log  --redo-only /opt/donghua/backup/2019-11-08_09-14-39/
[root@servicel06 donghua]#
--datadir                             			#从库的MySQL数据目录
/opt/donghua/backup/2019-11-08_09-14-39/         #主库拷贝过来的全备文件

【备注:】
自己写的脚本文件(从库172.16.97.161)backup.sh

#!/bin/bash


mv /opt/donghua/mysql/data /opt/donghua/mysql/data_bak

mkdir /opt/donghua/mysql/data -p

innobackupex --defaults-file=/etc/my.cnf  --user=root --socket=/tmp/mysql.sock  --datadir=/opt/donghua/mysql/data/ --apply-log  --redo-only /opt/donghua/backup/2019-12-23_10-31-09/ 


innobackupex --defaults-file=/etc/my.cnf  --user=root --socket=/tmp/mysql.sock  --datadir=/opt/donghua/mysql/data/ --copy-back /opt/donghua/backup/2019-12-23_10-31-09/ 

chown mysql.mysql /opt/donghua/mysql/data -R

service mysqld start

5、事务提交后,把全备文件内的数据恢复到从库的mysql 数据目录,即 datadir=/opt/donghua/mysql/data/

[root@servicel06 donghua]# innobackupex --defaults-file=/etc/my.cnf  --user=root --socket=/tmp/mysql.sock  --datadir=/opt/donghua/mysql/data/ --copy-back /opt/donghua/backup/2019-11-08_09-14-39/
[root@servicel06 donghua]# 

6、授权从库的/opt/donghua/mysql/data/目录,并启动mysql

[root@servicel06 donghua]# chown mysql.mysql /opt/donghua/mysql/data -R
[root@servicel06 donghua]# service mysqld start
[root@servicel06 donghua]# 

启动后mysql,就可以看到主库中的数据库与表都已经在从库中看到了。

7、通过全备目录内的Xtrabackup_binlog_info 文件,可以找到主从位置点(在主从同步时使用)

[root@localhost 2019-11-08_09-14-39]# cat xtrabackup_binlog_info 
mysql-bin.000736        662217819
[root@localhost 2019-11-08_09-14-39]# 

https://blog.csdn.net/sinat_29214327/article/details/81517233

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值