目录
1、安装多个MySQL服务
| 服务名称 | 端口 |
|---|---|
| MySQL8-Master | 3308 |
| MySQL8-Slave | 3309 |
安装教程:https://blog.youkuaiyun.com/Session_s/article/details/123429189


2、my.ini 配置
配置主从之间同步
user_db和order_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_db、user_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_FILE和MASTER_LOG_POS通过步骤4.1查询主库数据得到。

3、使用START SLAVE;启动I/O 线程和SQL线程

4、查看从库状态:SHOW SLAVE STATUS;

本文档详细介绍了如何在Windows上安装并配置两个MySQL服务,分别作为主库和从库,实现数据库的主从同步。配置包括my.ini文件的设置,如端口、数据目录、字符集等,并指定需要同步的数据库。此外,还展示了如何在从库创建具有只读权限的用户readonly,并提供设置主从复制的步骤,包括连接主从库、配置主库信息和启动从库复制。
211

被折叠的 条评论
为什么被折叠?



