MySQL管理工具MySQL Utilities — mysqlrplshow(45)

mysqlrplshow 用来显示主从复制关系,并绘制主的图形结构,标注每个主机名和端口。

必需指定–discover-slaves-login选项来提供用户名和密码以发现拓扑结构中的任何从。

使用 –recurse 选项,递归搜索从。这将导致工具连接到发现的每个从并尝试确定是否还有任何其他的从。如果发现从,这个过程将一直持续到从的主(圆形拓扑)。以连续缩进的图显示拓扑结构。 <--> 符号表示圆形拓扑。

如果使用–recurse选项,该工具将使用主提供的用户名和密码尝试连接从。默认情况下,如果连接尝试失败,抛出一个错误并停止。为了改变这种行为,可以是用 –prompt 选项,来提示连接失败的用户名和密码。也可以是用 –num-retries=n 选项来指定重新尝试的次数。

下面是一个典型的从中继拓扑:

MASTER, SLAVE, SLAVE+MASTER 分别表明仅仅是主,仅仅是从,既是从也是主。

下面是一个圆形的复制拓扑。其中<–> 符合表示圆:

使用–show-list选项除了图还会产生一个列列表。在这种情况下,可以指定如何显示列表,使用–format 选项指定,值可以是:

  • grid (default)
  • csv
  • tab
  • vertical

该工具使用SHOW SLAVE HOSTS语句,来确定主有哪些从。如果要想使用–recurse 选项,从在启动前需要指定 –report-host 和 –report-port 选项来设置它们的实际主机名和端口号或者该工具可能无法连接到从来确定它们的从。

选项

注意事项

登录用户需要有REPLICATE SLAVE 和 REPLICATE CLIENT 权限来确保可以成功执行该工具。同时,还需要有SHOW SLAVE STATUS, SHOW MASTER STATUS, SHOW SLAVE HOSTS的权限来执行该命令。

对于–format选项,值不区分大小写。也可以指定一个有效的唯一的前缀,否则会报错。

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

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

实例

显示本地3311主的从,如下所示:

在上面的例子中,需要指定主的有效的登录信息。

为了显示额外的信息,如IO线程的状态,确认从是否真正连接到主,使用–verbose选项。如下所示:

显示一个完整的主复制拓扑,如下所示:

显示一个完整的主复制拓扑,提示从的用户名和密码与主的用户名和密码凭证不一样。如下所示:

权限

连接到主需要有REPLICATION SLAVE 权限。

用户指定了 –discover-slaves-login选项,用户登录到每个从需要有 REPLICATION CLIENT 权限。