通过以下命令查看主库的状态信息。
mysql> show processlist;
在主库中查询当前数据库中的进程,看到Master has sent all binlog to slave; waiting for more updates
这个信息时,就表示主库一切正常,主库已经将全部的Binlog日志发送给了从库,等待新的Binlog产生,有几行该信息就表示有几个从库。
通过以下目录查看从库的状态信息。
mysql> show slave status\G;
从库的状态看这个参数Slave_IO_State: Waiting for master to send event
,等待master发生Binlog日志。
无论几个从库,只要Slave_IO_Running=Yes
和Slave_SQL_Running=Yes
那就表示主从集群同步的没有任何问题。
MySQL主从复制集群的监控,其实主要是针对从库进行监控的,监控来源就是根据从库的状态值进行监控的。
1)关于主库的信息
关于主库的信息时从master.info文件中读取的。
Master_Host: 192.168.20.11 \\主库的IP地址
Master_User: replicas \\主从复制使用的用户
Master_Port: 3306 \\主库的端口号
Connect_Retry: 10 \\从库与主库连接失败的重试次数
Master_Log_File: mysql-bin.000001 \\已经获取到的主库Binlog日志的名称
Read_Master_Log_Pos: 452 \\已经获取到的主库Binlog日志的标识位号
2)从库的Relylog的信息
Relay_Log_File: mysql-2-relay-bin.000003 \\从库已经运行过的relaylog文件名
Relay_Log_Pos: 320 \\从库已经运行过的relaylog的位置号
3)从库复制线程的工作状态
Slave_IO_Running: Yes \\IO线程的状态(Yes、No、Connecting)
Slave_SQL_Running: Yes \\SQL线程的状态
4)过滤复制的相关信息
Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
4)从库延时主库的时间
Seconds_Behind_Master: 0 \\主从复制,从库复制主库的延时时间,单位为秒,约小约好
5)从库线程报错的相关信息
Last_IO_Errno: 0 \\IO线程报错的号码
Last_IO_Error: \\IO线程报错的具体信息,可以从这里分析出问题的所在
Last_SQL_Errno: 0 \\SQL线程报错的号码
Last_SQL_Error: \\SQL线程报错的具体原因
6)配置延时从库
通过配置延时主库,可以降低数据误删除的风险,例如配置的从库延时时间为2小时,那么主库发生了新操作后,2小时之后才会同步到从库,如果2小时内有误删除的操作,可以通过从库还原数据。
SQL_Delay: 0 \\延时从库的时间,单位为秒
SQL_Remaining_Delay: NULL \\延时从库的剩余时间
7)GPIT的复制信息
Retrieved_Gtid_Set: \\接收到的GTID个数
Executed_Gtid_Set: 4f87bad8-fc67-11ec-be7b-005056b791aa:1 \\执行了的GTID个数