CentOS下 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        #忽略错误的参数

相关推荐