Mysql 数据库主库,备库实时同步配置

背景: mysql 主库服务器server1(192.168.71.37)    mysql 备库服务器server2(192.168.71.38)    主库,备库版本同为5.5.31.

第一步:创建复制账号

主库: GRANT REPLICATION SLAVE,REPLICATION CLIENT ON *.*  TO  username@'192.168.71.38'  INDENTIFIED BY 'password';

在主库和备库都创建该账号, 备库只需要修改对应的主库IP即可。


第二步:配置主库和备库

在主库的my.cnf 增加或修改如下内容:
log_bin = mysql-bin
server_id = 7137 (必须明确地指定一个唯一的服务器ID 此处去服务器Ip的最后两个段)

如果之前没有在mysql 的配置文件中指定log_bin 就需要重新启动Mysql。 为了确认二进制日志文件是否已经在主库上创建,使用:SHOW MASTER STATUS进行查看 bb
备库上也需要做同样的配置,并重启数据库
log_bin =  mysql-bin
server_id = 7138
relay_log = /var/lib/mysql/mysql-relay-bin (指定中继日志的位置和命名 )
log_slave_updates = 1 (允许备库将其重放的事件也记录到自身的二进制日志
read_only = 1

第三步:启动复制

在备库上执行以下命令

CHANGE MASTER TO MASTER_HOST='192.168.71.37 ',
MASTER_USER='username ',
MASTER_PASSWORD='password ',
MASTER_LOG_FILE = ' mysql-bin.000015 ',
MASTER_LOG_POS=0;
设置 MASTER_LOG_POS=0是要从日志的开头读取。

通过SHOW SLAVE STATUS;命令查看配置信息。

执行命令START SLAVE;开启复制。

通过SHOW SLAVE STATUS;再次查看

bb

通过SHOW PROCESSLIST;可以看到一个I/O线程,和一个SQL线程

bb

四:推荐的复制配置
在主库上二进制日志最重要的选项是: sync_binlog =1
如果开启该选项,mysql每次在提交事物请会将二进制日志同步到磁盘上,保证在服务器崩溃的时候不会丢失事件。

如果使用InnoDB 强烈推荐设置如下选项:

innodb_flush_logs_at_trx_commit
innodb_support_xa=1
innodb_safe_binlog

如果正在使用mysql 5.5 ,最好设置以下选项:
sync_master_info = 1
sync_replay_log = 1
sync_relay_long_info =1

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28624388/viewspace-1063901/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28624388/viewspace-1063901/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值