百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> CENTOS6.3中MYSQL主从数据库备份配置
分享文章到:

CENTOS6.3中MYSQL主从数据库备份配置

发布时间:01/15 来源: 浏览: 关键词:
前面讲过mysql热备份,下面小编再来给各位同学介绍一下在CENTOS6.3中MYSQL主从数据库备份配置的方 法,希望此教程 对各位同学会有所帮助哦。

 

MySQL主主互备结构是基于mysql增量日志基础上的,区别于主从复制结构.
在主主复制结构中,两台服务器的任何一台上面的数据库存发生了改变都会同步到另一台服务器上,这

个改变是基于sql语句的改变,如果删除系统数据库源文件或删除后新创建同名MYSQL表实现同步则无效

。这样两台服务器互为主从,并且都能向外提供服务,这就比使用主从复制具有更好的性能.
 
接下来我将使用两个相同的环境来实现这个效果:
 
系统环境:centos6.3
数据库: mysql-5.6.10

注:在做此项配置之前首先要保证数据库当前无任何变动,建议同步前关闭WEB服务等影响数据库变动的

服务 

安装配置mysql(略)
 
1.主1 mysql配置:(192.168.7.201)
 
删除之前遗留bin日志
# rm -rf /usr/local/mysql/log/bin*
修改mysql配置文件:
# vi /etc/my.cnf
添加:
-----------------
# Replication Master Server 1
# bin日志路径
log-bin = /usr/local/mysql/log/bin.log
# 服务器ID号
server-id = 1
# 忽略mysql数据库复制
binlog-ignore-db=mysql
# 每次增长2
auto-increment-increment = 2
# 设置自动增长的字段的偏移量,即初始值为2  
auto-increment-offset = 1 
------------
 
# mysql -u root -p123456
 
在主1上为主2添加同步帐号
 
> grant replication slave on *.* to 'slave'@'192.168.7.249' identified by '123456';
 
将主1的数据库表全部备份,并发送到主2服务器上。
 
# /usr/local/mysql/bin/mysqldump -u root -p123456 --opt --skip-lock-tables  --flush-logs 

--all-database > /root/allbak.sql
# cd ~
# scp allbak.sql root@192.168.7.249:/root
 
重启服务
# service mysqld restart
 
# mysql -u root -p123456;
 
配置连接到主2服务器(注意这步一定要在主2添加账户后执行)
 
> stop slave;
> change master to

master_host='192.168.7.249',master_user='slave',master_password='123456';
> start slave;
 
2.主2 mysql配置(192.168.7.249)
 
删除之前遗留bin日志
# rm -rf /usr/local/mysql/log/bin*
修改mysql配置文件:
# vi /etc/my.cnf
添加:
--------------------
# Replication Master Server 2
# bin日志路径
log-bin = /usr/local/mysql/log/bin.log 
server-id=2
# 忽略mysql数据库复制
replicate-ignore-db=mysql
# 每次增长2
auto-increment-increment = 2
# 设置自动增长的字段的偏移量,即初始值为2  
auto-increment-offset = 2
--------------------- 
 
# mysql -u root -p123456
在主2上为主1添加同步帐号
> grant replication slave on *.* to 'slave'@'192.168.7.201' identified by '123456';
 
恢复主1的数据库到主2
#/usr/local/mysql/bin/mysql -u root -p123456 < /root/allbak.sql
 
重启服务
# service mysqld restart
 
# mysql -u root -p123456;
配置连接到主1服务器
> stop slave;
> change master to

master_host='192.168.7.201',master_user='slave',master_password='123456';
> start slave;
 
 
最后分别登陆两台服务器mysql后台查看主主备份连接状态
# mysql -u root -p123456;
> show slave statusG;
 
搜索这三行,如下则主主互备配置成功
Slave_IO_State: Waiting for master to send event
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
 

当主1的数据库增加,删除,改变数据时,主2也会同步更新。

当主2的数据库增加,删除,改变数据时,主1也会同步更新。

这样就可以配合keepalived实现数据库双机热备+数据同步互备,大大提高了MYSQL的可靠性和安全性

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有6人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板