codetc - 网站开发技术 首页 后端 数据库 查看内容

mysql主从数据库(Master/Slave)同步配置

2015-4-1 00:55| 发布者: CODETC| 查看: 2501| 评论: 0

随着访问量的增加,对于一些比较耗时的数据库读取操作,一般采用将写入与读取操作分开来缓解数据库的压力,数据库引擎一般采用Master/Slave架构。实现mysql服务器的主从配置,可以实现读写分离,另外在主数据库崩溃后可以从备用数据库中恢复数据以不至于网站中断访问。下面简单说下mysql主从服务器配置的过程。


首先需要在同一个局域网内的两台机器(当然也可以用一台机器虚拟两台机器出来),都安装上mysql服务。

主机A: 192.168.1.100

从机B: 192.168.1.101

可以有多台从机。


1、先登录主机 A,执行如下命令赋予从机权限,如果有多台丛机,就执行多次:

mysql>GRANT REPLICATION SLAVE ON *.* TO 'backup'@'192.168.1.101' IDENTIFIED BY '123456';

2、 打开主机A的my.cnf,输入如下配置参数:

server-id = 1 #主机标示,整数
log_bin = /var/log/mysql/mysql-bin.log #确保此文件可写
read-only =0 #主机,读写都可以
binlog-do-db =test #需要备份数据,多个写多行
binlog-ignore-db =mysql #不需要备份的数据库,多个写多行

3、打开从机B的my.cnf,输入如下配置参数:

server-id = 2
log_bin = /var/log/mysql/mysql-bin.log
master-host =192.168.1.100
master-user =backup
master-pass =123456
master-port =3306
master-connect-retry=60 #如果从服务器发现主服务器断掉,重新连接的时间差(秒)
replicate-do-db =test #只复制某个库
replicate-ignore-db=mysql #不复制某个库

4、同步数据库

进过以上的配置,分别重启主机A和从机B,即可自动实现同步。


5、验证

在主机A中,mysql>show master status\G;

能看到大致这些内容

File: mysql-bin.000001
Position: 1374
Binlog_Do_DB: test
Binlog_Ignore_DB: mysql

在从机B中,mysql>show slave status\G;

显示内容如下图所示:


可以看到Slave_IO_State项为Waiting for master to send event且红圈中两项皆为Yes,那么基本上可以确定是配置成功了


另外可以在主机A中,做一些INSERT, UPDATE, DELETE 操作,看看主机B中,是否已经被修改。

文章来源 CODETC,欢迎分享,转载请注明地址: http://www.codetc.com/article-168-1.html

最新评论

 作为游客发表评论,请输入您的昵称

返回顶部