配置mysql主从数据库同步

一、基本环境

mysql主数据库:

  1. 系统环境:win7

  2. 内网ip:192.168.1.135

  3. mysql 5.5

mysql从数据库:

  1. 系统环境:centos6.5

  2. 内网ip:192.168.1.122

  3. mysql 5.7

二、环境配置

前期准备:

分别在主库和从库创建一个名称为test1的数据库,同时创建一个测试表


1、配置主数据库:

找到win7的mysql的my.ini文件,在该文件中配置如下:

找到[mysqld]所在的位置,在该节点下面添加:

server-id=1

#二进制文件存放路径

log-bin=C:\Program Files\MySQL\MySQL Server 5.5\log

#待同步的数据库

binlog-do-db=test1 

配置缓存后,使用root账号登陆主数据库,然后一个从数据库访问主数据库的账号:

GRANT REPLICATION SLAVE,RELOAD,SUPER ON *.* TO 'backup'@'192.168.1.122'  IDENTIFIED BY '123';

执行

SHOW MASTER STATUS

记住字段File的值和Postion的值。(eg:log.000001,107)

SHOW VARIABLES LIKE '%log_bin%' 注意主库的log_bin是ON 而不是OFF

以上操作配置完成后需要重启一下主数据库。

当数据库重启完毕后,请在从数据库的机器上使用mysql -uroot -pback -h 192.168.1.135 进行登陆,如果登陆成功说明账号没有问题(最好关闭win7的防火墙)。


2、配置从数据库

进入到centos系统,找到my.cnf文件,同样找到文件中的[mysqld]节点,在该节点下添加:

log_bin           = mysql-bin

server_id         = 2

relay_log         = mysql-relay-bin

log_slave_updates = 1

read_only         = 1

replicate-do-db=test1    #待同步的数据库

修改完成后 通过 service mysqld restart 命令来重启一下从库。

重启完成后登陆到从库执行:

STOP SLAVE;
CHANGE MASTER TO MASTER_HOST='192.168.1.135',
MASTER_USER='backup',
MASTER_PASSWORD='123',
MASTER_LOG_FILE='log.000001',
MASTER_LOG_POS=107;

START SLAVE;
SHOW SLAVE STATUS;

然后请看这个三个字段的值:

Slave_IO_State:Waiting FOR MASTER TO send event;

Slave_IO_Running:YES;

Slave_SQL_Running:YES;

如果是这样那说明主从配置成功了。

此时可以进入主库想test1数据的表插入数据保存后,再进入到从库查看test1表的数据是否已经同步了。

你可能感兴趣的:(配置mysql主从数据库同步)