您好,欢迎访问一九零五行业门户网

CentOS下 MySQL同步备份

mysql支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日
注释:mysql支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环。服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知下一次更新。在实际项目中,,两台分布于异地的主机上安装有mysql数据库,两台服务器互为主备,客户要求当其中一台机器出现故障时,另外一台能够接管服务器上的应用,这就需要两台数据库的数据要实时保持一致,在这里使用mysql的同步功能实现双机的同步复制。
以下是操作实例:
一、环境配置
1、主数据服务端:centos release 5.6    mysql-5.0.77-4.el5_5.4  ip:192.168.4.200
2、从数据客户端:centos release 5.69  mysql-server-5.0.95-5.el5_9  ip:192.168.4.244
二、在主、从数据库增加同步账号
1、在主库增加一个从库可以登录的账号
mysql>
grant all privileges on *.* to tongbu@'192.168.4.244' identified by '123456';
(注意:tongbu是用于同步的帐号,123456是tongbu的密码)
2、在从库增加一个主库可以登录的账号
mysql>
grant all privileges on *.* to tongbu@'192.168.4.200' identified by '123456';
(注意:tongbu是用于同步的帐号,123456是tongbu的密码)
三、配置数据库参数
1、以root用户登录主库,修改主库my.cnf文件;
[root@jw01 mysql]# vim /etc/my.cnf
[mysqld]下面增加以下的参数;
default-character-set=utf8
log-bin=mysql-bin
relay-log=relay-bin
 relay-log-index=relay-bin-index
server-id=1
master-host=192.168.4.244          #同步服务器的ip
master-user=tongbu                      #用于同步的帐号
master-password=123456          #用于同步帐号的密码
master-port=3306                        #同步服务器的端口
master-connect-retry=30                  #同步的时间间隔,单位是秒
binlog-do-db=zhubao              #需要同步的库,zhubao、hydatabase、zentao、collect;
binlog-do-db=hydatabase
 binlog-do-db=zentao
 binlog-do-db=collect
 replicate-do-db=zhubao   
replicate-do-db=hydatabase   
replicate-do-db=zentao 
 replicate-do-db=collect   
2、以root用户登录从库,修改从库my.cnf文件;
[root@jw02 mysql]# vim /etc/my.cnf
[mysqld]下面增加以下的参数;
default-character-set=utf8
log-bin=mysql-bin
relay-log=relay-bin
 relay-log-index=relay-bin-index
server-id=2
master-host=192.168.4.200
 master-user=tongbu
 master-password=123456
 master-port=3306
 master-connect-retry=30
 binlog-do-db=zhubao
binlog-do-db=hydatabase
 binlog-do-db=zentao
 binlog-do-db=collect
 replicate-do-db=zhubao   
replicate-do-db=hydatabase   
replicate-do-db=zentao   
replicate-do-db=collect
slave-net-timeout=60      #当slave从主数据库读取log数据失败
slave-skip-errors=all        #忽略错误的参数
其它类似信息

推荐信息