分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离 (三)

        本篇主要说明:

                1. 因为这个mysql版本是8.0,所以当其中一台mysql节点挂掉之后,主从同步,甚至双向数据同步都失效了,所以本篇主要记录下当其中的节点挂掉之后如何再次生效。另外推荐大家使用mysql5.7的版本,这样当其他节点失效后就不需要我们自己重新设置了,他会自动连接。

                首先打开主数据库运行sql

#查询主数据库的信息,后面从数据库需要使用
show master STATUS


# 主从数据库版本不能一样,所以查看一下(主:版本为 1,从:版本为 2)
SHOW variables like 'server_id';


# 如果要设置的话
# set GLOBAL server_id = 1

                说明:当运行 show master STATUS时,会出现下图需要使用下面两个数据,我们需要保存File和Position的两个值,后面从数据库需要设置主数据库需要使用。

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离 (三)_第1张图片

                然后打开从数据库运行sql

# 查询从数据库信息,以及是否绑定其他主数据库
show SLAVE STATUS

# 这里一样,查询版本,不能和主主数据库一样,这里设置为 2
SHOW variables like 'server_id';

set GLOBAL server_id = 2

# 如果需要重新设置的话请先暂停之前的slave,否则更新后不会生效
stop slave;


# 设置主数据库实现主从同步
# master_host: 主数据库ip
# master_port: 主数据库端口(默认为3306)
# master_user='qiyu-slave',master_password='qiyu-pwd' 这里可以去查看写的第一篇文章
# master_log_file: 填写主数据库查出来的日志信息
# master_log_pos: 填写主数据库查出来的日志信息
change master to master_host='192.168.1.128',master_port=8808, master_user='qiyu-slave',master_password='qiyu-pwd',master_log_file='binlog.000002',master_log_pos=161920;


# 重新开始
start slave;

分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离 (三)_第2张图片

         说明:当出现两个yes代表配置成功!!!祝你好运。

你可能感兴趣的:(mysql,架构,数据库)