mysql - MySQL 复制中的主机 IP 更改
问题描述
我们有 MySQL 服务器及其在另一台机器上运行的复制。Master和slave都在MySQL 5.6上运行,现在计划更新master和slave机器的IP。我们计划在复制中使用以下查询。
STOP SLAVE ;
CHANGE MASTER TO MASTER_HOST = '1.2.3.4', MASTER_LOG_FILE = 'abc.123', MASTER_LOG_POS = '1234';
START SLAVE;
有人可以确认上述方法是否真的正确,并且在更新主控主机 ip 进行复制时需要足够的信息。
提前致谢。
解决方案
这看起来是一种合理的方法,但是关于您的环境有很多我不知道的细节,所以我不知道您展示的步骤是否就是您需要做的全部。
在更改复制配置之前,我会在副本机器上运行 mysql 客户端,以使用新的 IP 地址连接到主服务器。
例子:
$ mysql -h 1.2.3.4 -u <repluser> -p'<replpassword>'
使用您用于副本的repluser和replpassword连接到主服务器。
这将测试副本机器是否可以连接(即有一个有效的网络路由,没有防火墙阻止,用户和密码是否正确等)。
然后在mysql客户端shell中,验证repluser是否有REPLICATION SLAVE权限,验证master的二进制日志坐标是否符合你的期望。
mysql> show grants;
mysql> show master;
推荐阅读
- templates - 让 Task 调用具有已知特定返回类型的任意函数的正确方法是什么?
- javascript - 每次重新渲染父组件时如何重新渲染子组件?
- spring-boot - Spring Boot RestController 在没有 SpringBootApplication 的情况下如何工作?
- gradle - 如何持久启用 Gradle 配置缓存功能?
- raku - 内省捕获的更好方法
- java - Android Studio 为 AIDL 生成 JavaDoc
- python - 多人呼叫电报机器人
- python - PyCharm 解释器引用
- django - Cookie 未在 Angular 客户端上设置
- android - Android - 没有可用于此商家的可接受的卡