MySQL管理工具MySQL Utilities — mysqlrplcheck(44)

  • A+
所属分类:MySQL

mysqlrplcheck  工具是用来检查复制的先决条件的。这些检查的设计或者说是测试,是用来确保复制的健康。测试的内容有:

  1. 在主上是否启用了二进制?
  2. 是否有排除某些二进制(如有*_do_db 或 *_ignore_db的设置)?如果有,显示它们。
  3. 在主上是否有复制用户以及权限是否正确?
  4. SERVER_ID是否冲突?
  5. 从是否连接到主?如果没有显示主的主机和端口。
  6. 从上的master.info文件与主上的SHOW SLAVE STATUS显示的值是否冲突?
  7. InnoDB配置是否兼容(插件还是内嵌的)?
  8. 存储引擎是否兼容(主从一样)?
  9. lower_case_tables_names设置是否兼容?如果有设置大小写表名可能会导致问题产生警告。
  10. 从是否落后主?

该工具进行每个测试,如果发现任何一个发生错误将退出。连接服务器失败也会退出的。

每个测试的状态有:pass(满足先决条件)、fail(满足先决条件但是发生了一个或多个错误,或者例外)、warn(需要进一步研究配置,但是不是错误的。)

使用--verbose选项来获取额外的信息,如server_id、lower_case_table_name设置和从上面的主信息文件内容。

为了查看到SHOW SLAVE STATUS语句的值,可以使用 --show-slave-status 选项。

选项

注意

用户必须要有SHOW SLAVE STATUS, SHOW MASTER STATUS, SHOW VARIABLES的执行权限。

IP地址和主机名混合使用不推荐。涉及到反向解析的问题。

MySQL客户端工具的路径需要包含在PATH环境变量中,以便使用login-paths验证机制。允许使用my_print_defaults 来从登陆配置文件(.mylogin.cnf)读取login-path值。

实例

在设置主从复制之前,检测主从的先决条件,命令如下:

在这个例子中,必须要有登录主从的有效的登录信息。

执行相同的命令,并显示从上的主信息文件的内容和 SHOW SLAVE STATUS 值以及额外的详细信息,如下:

权限

在主上需要对mysql数据库具有SELECT 和 INSERT权限,同时还要有REPLICATION SLAVE, REPLICATION CLIENT 和 GRANT OPTION权限。

在从上需要有SUPER 权限。

此外,当使用GTIDs时,从用户还必需要有对mysql数据库的SELECT 权限。

weinxin
微信公众号
扫一扫关注运维生存时间公众号,获取最新技术文章~

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: