MYSQL的级联复制实际上就是在主从的基础上多加一个复制,例如B复制A,C复制B。
A>B>C
A挂,B提升为主,此时C不用做change master,缺点是复制延迟大,无法避免。
1、配置主192.168.1.138
1)配置my.cnf
vi /etc/my.cnf
重启mysql
service mysqld restart
查看主状态
2)授权给从数据库
grant replication slave on *.* to 'repl'@'192.168.1.%'
ALTER USER 'repl'@'192.168.1.%' IDENTIFIED WITH mysql_native_password BY 'Aa123456';
flush privileges;
查看master状态
2、配置主192.168.1.139
1)配置my.cnf
vi /etc/my.cnf
service mysqld restart
grant replication slave on *.* to 'repl'@'192.168.1.%'
ALTER USER 'repl'@'192.168.1.%' IDENTIFIED WITH mysql_native_password BY 'Aa123456';
flush privileges;
查看master状态
3、配置192.168.1.139复制192.168.1.138的数据。
stop slave ;
CHANGE MASTER TO
MASTER_HOST='192.168.1.138',
MASTER_PORT=3306,
MASTER_USER='repl',
MASTER_PASSWORD='Aa123456',
MASTER_LOG_FILE='mysql-bin.000002',
MASTER_LOG_POS=1323
for channel '116';
start slave ;
show slave status
4、配置从库192.168.1.140的数据
1)配置my.cnf
vi /etc/my.cnf
配置auto.cnf
vi /usr/local/mysql_data/auto.cnf
auto.cnf 里面的server-uuid必须唯一
重启mysql
service mysqld restart
2)配置同步主的数据,这里不太一样是因为加了一个channel,这个用来区分不同的数据。
stop slave ;
reset slave all;
stop slave ;
CHANGE MASTER TO
MASTER_HOST='192.168.1.139',
MASTER_PORT=3306,
MASTER_USER='repl',
MASTER_PASSWORD='Aa123456',
MASTER_LOG_FILE='mysql-bin.000004',
MASTER_LOG_POS=2629
for channel '126';
start slave ;
show slave status