CENTOS6.3中MYSQL主从数据库备份配置
发布:smiling 来源: PHP粉丝网 添加日期:2014-09-28 22:08:08 浏览: 评论:0
前面讲过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 //phpfensi.com
- Slave_SQL_Running: Yes
当主1的数据库增加,删除,改变数据时,主2也会同步更新.
当主2的数据库增加,删除,改变数据时,主1也会同步更新.
这样就可以配合keepalived实现数据库双机热备+数据同步互备,大大提高了MYSQL的可靠性和安全性.
Tags: CENTOS6 3 MYSQL主从备份配置
相关文章
- ·CentOS6.4安装配置mysql 5.6服务器方法(2014-09-24)
- ·centos 6设置mysql不区分大小写(2014-09-28)
- ·Centos6安装mysql数据配置及数据导入备份(2014-10-04)
- ·MySQL3.23.31之前版本的安全漏洞(2013-11-14)
- ·mysql中unsigned类型字段出现65535错误(2014-09-23)
- ·解决MySQL启动的error 2003和1067 10061错误问题(2014-09-23)
- ·解决MySql error #1036 Table is read only 错误方法(2014-09-24)
- ·mysql数据1135报错问题解决办(2014-09-25)
- ·MySQL下“Can’t create/write to file xxx (Errcode: 13)”错误(2014-09-27)
- ·mysql错误:Warning: #1366 Incorrect string value:解决方法(2014-09-27)
- ·创建mysql存储过程出现1307错误(2014-09-27)
- ·Cant Connect MySQL Server(localhost:3306)问题(2014-09-28)
- ·MySQL Replication 遇到 Got fatal error 1236 from master 修复(2014-10-02)
- ·MySQL SQL UPDATE语句出现#1093错误解决办法(2014-10-04)
- ·解决mysql远程链接1130错误方法介绍(2014-10-04)
- ·远程连接MySQL报错ERROR 2003解决办法(2014-10-04)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)