搭建mysql主从服务

该文详细介绍了如何使用Docker搭建MySQL5.7.4环境,并设置主从复制。首先,通过运行镜像创建主服务器,设置服务器ID,binlog格式和日志,创建并授权复制用户。然后,查询主服务器的binlog信息。接着,同样使用Docker创建从服务器,设置不同的服务器ID,并配置从服务器连接主服务器的详细信息。最后,启动从服务并检查主从复制的状态,确保配置成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.环境

基于docker搭建环境。

使用mysql版本5.7.4

二.搭建mysql主

1.运行镜像

docker run \
--name mysqlmaster \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /docker/mysql/data:/var/lib/mysql \
-v /docker/mysql/config:/etc/mysql/conf.d \
-p 5132:3306 \
-d mysql:5.7.4

2.在主服务器创建slave用户并且给权限

-- 创建用户,设置密码

CREATE USER 'user_slave'@'%' IDENTIFIED BY 'MyP@ssw0rd123';

-- 赋复制权限

GRANT REPLICATION SLAVE ON *.* TO 'user_slave'@'%';

-- 刷新权限

FLUSH PRIVILEGES;

3.设置主服务器配置(my.cnf)

[mysqld]
#设置服务器id(确保唯一)
server-id=1
#设置日志个数默认ROW
binlog_format=STATEMENT
#开启binlog日志(mysql-bin 日志名称)
log-bin=mysql-bin 
#设置需要复制的数据库,默认复制全部
binlog-do-db=mydb

4.查询binlog文件

SHOW MASTER STATUS;

binlog.000001 154

三.搭建mysql从

1.运行镜像

docker run \
--name mysqlslave  \
-e MYSQL_ROOT_PASSWORD=123456 \
-v /docker/mysqls/data:/var/lib/mysql \
-v /docker/mysqls/config:/etc/mysql/conf.d \
-p 5232:3306 \
-d mysql:5.7.4

2.设置主服务器配置(my.cnf)

[mysqld]
#设置服务器id(确保唯一)
server-id=2

3.在从机设置主从关系

CHANGE MASTER TO  

 MASTER_HOST = '主服务器的 IP 地址',    

 MASTER_PORT = 主服务器的端口号,  

 MASTER_USER = '用于复制的用户',    

 MASTER_PASSWORD = '用于复制的用户的密码',    

 MASTER_LOG_FILE = '主服务器的二进制日志文件名',    

 MASTER_LOG_POS = 主服务器的二进制日志位置;

4.查询状态

-- 开启从服务

START SLAVE;

-- 查看状态

SHOW SLAVE STATUS

看到YES就是成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值