mysql主从复制监控方法
方法01:利用数据库自带命令实现监控:
方法02:利用第三方专业工具实现监控:
方法03:利用第三方开源平台实现监控:
我们来各个分析一下:
方法01:利用数据库自带命令实现监控:
在从库上可以使用SQL语句,进行主从复制数据情况的监控:
mysql> show slave status\G
-- 在主库上也可以实现数据复制监控,但是一般情况下更关注的是从库;
监控语句输出信息解读:
内容分类 输出内容 解释说明
主库的复制信息 Master_Host: 192.168.30.101 表示连接主库地址信息
- 利于IO线程工作方便 Master_User: repl 表示连接主库用户信息
Master_Port: 3307 表示连接主库端口信息
Connect_Retry: 10 表示连接主库重试间隔
Master_Log_File: binlog.000004 表示主从同步日志信息
Read_Master_Log_Pos: 156 表示主从同步位置信息
从库的回放信息 Relay_Log_File: baimeidashu-01-relay-bin.000005 表示中继日志回放文件信息
- 利于SQL线程工作方便 Relay_Log_Pos: 365 表示中继日志回放位置信息
Relay_Master_Log_File: binlog.000004 表示对应主库日志文件信息
可以用于帮助判断主从延时的日志量
Exec_Master_Log_Pos: 156 表示对应主库日志位置信息
可以用于帮助判断主从延时的日志量
从库的线程信息 Slave_IO_Running: Yes 表示从库同步数据时-IO线程状态
- 利于判断同步线程情况 Slave_SQL_Running: Yes 表示从库同步数据时-SQL线程状态
Last_IO_Errno: 0 表示从库IO线程异常错误代码
Last_IO_Error: 表示从库IO线程异常错误原因
Last_SQL_Errno: 0 表示从库SQL线程异常错误代码
Last_SQL_Error: 表示从库SQL线程异常错误原因
过滤复制的相关信息 Replicate_Do_DB:
Replicate_Ignore_DB:
Replicate_Do_Table:
Replicate_Ignore_Table:
Replicate_Wild_Do_Table:
Replicate_Wild_Ignore_Table:
主从复制的延时情况 Seconds_Behind_Master: 0 表示主从之间延时秒数信息
延时从库的状态情况 SQL_Delay: 0 表示延时同步时间间隔情况
SQL_Remaining_Delay: NULL 表示最近事件延时剩余时间
主从GTID复制状态情况 Retrieved_Gtid_Set:
Executed_Gtid_Set:
方法02:利用第三方专业工具实现监控:
可以使用的专业监控工具:pt-table-checksum、pt-table-sync、pt-heartbeat
方法03:利用第三方开源平台实现监控:
可以使用的开源平台介绍:orch (主从拓扑监控管理)