实验环境:

system:centos 6.5 64位

mysql:5.6.23

hostname             ip

local-db1            192.168.1.211

local-db2            192.168.1.212

1.登录mysql,查看库

mysql5.6主从配置_mysql

mysql5.6主从配置_mysql_02

2.db1配置

(1)修改配置文件

[root@local-db1 ~]# vi /etc/my.cnf 

log-bin = mysql-bin

server-id = 1

(2)重启mysql

[root@local-db1 ~]# /etc/init.d/mysql restart

(3)查看配置是否生效

mysql5.6主从配置_mysql_03

(4)授权可同步用户,登录mysql操作

grant replication slave on *.* to 'mysqlbak'@'192.168.1.212' identified by '123456';

mysql5.6主从配置_mysql_04

(5)锁表

flush tables with read lock;      ##防止有新的数据写入,导致master状态变更

mysql5.6主从配置_mysql_05

(6)导出数据

[root@local-db1 ~]# mysqldump -uroot -p123456 --all-databases > /opt/bak.sql     ##将导出的bak.sql传到db2上

(7)解锁,查看master状态

unlock tables;

show master status;

mysql5.6主从配置_mysql_06

3.db2配置

(1)修改配置文件

[root@local-db1 ~]# vi /etc/my.cnf 

log-bin = mysql-bin

server-id = 2

(2)重启mysql

[root@local-db2 ~]# /etc/init.d/mysql restart

(3)查看配置是否生效

mysql5.6主从配置_mysql_07

(4)导入数据

[root@local-db2 ~]# mysql -uroot -p123456 < /opt/bak.sql               ##bak.sql是从db1上拷贝的

(5)登录数据库,执行

CHANGE MASTER TO 

MASTER_HOST='192.168.1.211',

MASTER_PORT=3306,

MASTER_USER='mysqlbak',

MASTER_PASSWORD='123456',

MASTER_LOG_FILE='mysql-bin.000001',        ##此处内容,同主库show master status file的值

MASTER_LOG_POS=334;                        ##主库show master status Position值

mysql5.6主从配置_mysql_08

(6)开启同步,查看同步状态

start slave;                         ##执行同步开关

show slave status\G                  ##查看同步状态

mysql5.6主从配置_mysql_09

4.同步测试

(1)在db1上新建库,新建表

mysql5.6主从配置_mysql_10

(2)在db2上查看是否同步成功

mysql5.6主从配置_mysql_11