前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker中MySQL主从复制

Docker中MySQL主从复制

原创
作者头像
全栈开发Dream
修改2021-05-18 10:03:37
8270
修改2021-05-18 10:03:37
举报

MySQL主从复制

一、配置Master(主)

[mysqld]
## 同一局域网内注意要唯一
server-id=100
## 开启二进制日志功能,可以随便取(关键)log-bin=mysql-bin

二、配置Slave(从)

2.1这里我用了直接copy法,把外面文件夹已经写好配置的 my.cnf 直接 copy 到 Slave 库中,不用重新下载Vim,没那么多内存

[mysqld]
## 设置server_id,注意要唯一
server-id=101  
## 开启二进制日志功能,以备Slave作为其它Slave的Master时使用
log-bin=mysql-slave-bin   
## relay_log配置中继日志
relay_log=edu-mysql-relay-bin  

2.2在Master进入mysql,执行

show master status;

2.3查看容器运行的各种数据,其中IPAddress就是容器IP

docker inspect 容器ID

Slave的IP:

Master的IP:

##这是一条错误代码
change master to master_host='自己的IP', master_user='slave', master_password='自己的密码', master_port=端口, master_log_file='mysql-bin.000001', master_log_pos= 704, master_connect_retry=30;

2.4查看主从同步状态。

show slave status \G;
Error:报错
error connecting to master 'slave@自己的IP:端口' - retry-time: 30 retries: 16 message: Authentication plugin 'caching_sha2_password' reported 
error: Authentication requires secure connection.

查了具体原因:因为博客里博主的master库用的是slave用户名,而我的master库使用的是root,所以无法正确链接到master库

2.5解决办法:先停止,然后重新修改用户名再重启即可

Stop SLAVE IO_THREAD;
change修改用户名root
change master to master_host='自己的IP', master_user='root', master_password='密码', master_port=端口, master_log_file='mysql-bin.000001', 
master_log_pos= 704, master_connect_retry=30;

2.6重新查看

show slave status \G;

SlaveIORunning 和 SlaveSQLRunning 都是Yes

2.7说明主从复制已经开启。此时可以测试数据同步是否成功。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • MySQL主从复制
    • 一、配置Master(主)
      • 二、配置Slave(从)
        • 2.1这里我用了直接copy法,把外面文件夹已经写好配置的 my.cnf 直接 copy 到 Slave 库中,不用重新下载Vim,没那么多内存
        • 2.2在Master进入mysql,执行
        • 2.3查看容器运行的各种数据,其中IPAddress就是容器IP
        • 2.4查看主从同步状态。
        • 2.5解决办法:先停止,然后重新修改用户名再重启即可
        • 2.6重新查看
        • 2.7说明主从复制已经开启。此时可以测试数据同步是否成功。
    相关产品与服务
    云数据库 SQL Server
    腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档