Window环境搭建MySQL主从复制

1、安装多个MySQL服务

服务名称端口
MySQL8-Master3308
MySQL8-Slave3309

安装教程:https://blog.csdn.net/Session_s/article/details/123429189
在这里插入图片描述在这里插入图片描述

2、my.ini 配置

配置主从之间同步user_dborder_db库,并忽略初始库

2.1、master主库

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
# 设置3308端口
port = 3308
# 设置mysql的安装目录
basedir=D:\JavaSoftware\Database\MySQL\Master Slave\Master-3308
# 设置mysql数据库的数据的存放目录
datadir=D:\JavaSoftware\Database\MySQL\Master Slave\Master-3308\data
# 允许最大连接数
max_connections=200
# 设置mysql服务端默认字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# MySQL 服务的唯一编号,每个 MySQL 服务的 id 需唯一
server-id=3308


# binlog 文件名
log-bin=mysql-bin

# 设置需要同步的数据库名
binlog-do-db=user_db
binlog-do-db=order_db
 
# 屏蔽数据库同步
binlog-ignore-db=mysql
binlog-ignore-db=performance_schema
binlog-ignore-db=information_schema
binlog-ignore-db=sys

2.2、slave从库

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
# 设置3309端口
port = 3309
# 设置mysql的安装目录
basedir=D:\JavaSoftware\Database\MySQL\Master Slave\Slave-3309
# 设置mysql数据库的数据的存放目录
datadir=D:\JavaSoftware\Database\MySQL\Master Slave\Slave-3309\data
# 允许最大连接数
max_connections=200
# 设置mysql服务端默认字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# MySQL 服务的唯一编号,每个 MySQL 服务的 id 需唯一
server-id=3309


# binlog 文件名
log-bin=mysql-bin
 
# 设置需要同步的数据库
replicate_wild_do_table=user_db.%
replicate_wild_do_table=order_db.%

# 设置忽略同步的数据库
replicate_wild_ignore_table=mysql.%
replicate_wild_ignore_table=performance_schema.%
replicate_wild_ignore_table=information_schema.%
replicate_wild_ignore_table=sys.%

3、在从库创建只读权限的用户readonly

创建用户: readonly 密码:123456

CREATE USER `readonly`@`` IDENTIFIED BY '123456';

给用户readonly授予数据库order_dbuser_db的只读权限:

GRANT Select ON `order\_db`.* TO `readonly`@``; 
GRANT Select ON `user\_db`.* TO `readonly`@``;

4、设置主从

4.1 、连接主数据库

使用SHOW MASTER STATUS 查询主库的binlog文件名以及起始点position
在这里插入图片描述

4.2 、连接从数据库

1、使用STOP SLAVE;停止I/O 线程和SQL线程的操作
在这里插入图片描述

2、使用CHANGE MASTER TO命令配置slave连接master的信息
CHANGE MASTER TO MASTER_HOST='localhost',MASTER_PORT=3308,MASTER_USER='root',MASTER_PASSWORD='123456',MASTER_LOG_FILE='mysql-bin.000001',MASTER_LOG_POS=1044;

注:MASTER_LOG_FILEMASTER_LOG_POS通过步骤4.1查询主库数据得到。

在这里插入图片描述
3、使用START SLAVE;启动I/O 线程和SQL线程
在这里插入图片描述

4、查看从库状态:SHOW SLAVE STATUS;
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值