Skip to content

replication_connection_status

xiaoboluo768 edited this page Jun 8, 2020 · 2 revisions
  • 该表中记录的是从库IO线程的连接状态信息(也记录组复制架构中其他节点的连接信息,组复制架构中一个节点加入集群之前的数据需要使用异步复制通道进行数据同步,组复制的异步复制通道信息在show slave status中不可见)
    • 与replication_connection_configuration表相比,replication_connection_status表中的记录变更更频繁,replication_connection_status表在从库IO线程连接期间,可能会因为网络或者做一些维护时执行stop slave的原因发生变化。而replication_connection_configuration表中的配置信息在从库IO线程连接期间并不会有变化
  • replication_connection_status表各字段含义及与show slave status输出字段对应关系如下:
replication_connection_status表列名 含义 对应show slave status输出字段名
CHANNEL_NAME 显示复制通道名称 Channel_Name
GROUP_NAME 如果此从库服务器是组复制架构中的组成员,则该字段显示从库服务器所属的组名称
SOURCE_UUID 该通道下从库连接的master的server_uuid值 Master_UUID
THREAD_ID 该通道下从库连接主库的I/O线程ID
SERVICE_STATE 该通道下从库所连接主库的IO线程状态,有效值有:ON(IO线程已创建且处于活跃状态或空闲状态),OFF(IO线程不再存在,可能没有启动)或CONNECTING(IO线程存在并正在尝试连接到主库,还未成功建立连接) Slave_IO_Running
RECEIVED_TRANSACTION_SET 该通道下从库接收的主库事务对应的全局事务ID(GTID)集合。如果未启用GTID,则该字段为空 Retrieved_Gtid_Set
LAST_ERROR_NUMBER,LAST_ERROR_MESSAGE 该通道下从库I/O线程发生错误停止的最新错误号和错误消息。如果错误编号为0,错误信息字段为空串,则表示“无错误”。如果LAST_ERROR_MESSAGE字段值不为空,则错误值也会打印在从库的错误日志中,注意,在执行RESET MASTER或RESET SLAVE语句时这两个列值会被重置 Last_IO_Errno,Last_IO_Error
LAST_ERROR_TIMESTAMP 该通道下从库IO线程发生错误的时间,时间格式为:YYMMDD HH:MM:SS Last_IO_Error_Timestamp
LAST_HEARTBEAT_TIMESTAMP 该通道下从库IO线程最近一次接收到主库的心跳信号的时间,时间格式为:YYMMDD HH:MM:SS
COUNT_RECEIVED_HEARTBEATS 该通道下从库自上一次重新启动、最近一次执行reset语句重置或最近一次执行CHANGE MASTER TO语句以来,从库接收到主库的心跳信号的总次数
  • 对于replication_connection_status表,不允许执行TRUNCATE TABLE语句

  • 表记录内容示例

admin@localhost : performance_schema 02:52:00> select * from replication_connection_status\G;
*************************** 1. row ***************************
            CHANNEL_NAME: 
              GROUP_NAME: 
              SOURCE_UUID: b57c75c2-6205-11e7-8d9f-525400a4b2e1
                THREAD_ID: 42
            SERVICE_STATE: ON
COUNT_RECEIVED_HEARTBEATS: 4043
LAST_HEARTBEAT_TIMESTAMP: 2017-08-24 14:52:00
RECEIVED_TRANSACTION_SET: 
        LAST_ERROR_NUMBER: 0
      LAST_ERROR_MESSAGE: 
    LAST_ERROR_TIMESTAMP: 0000-00-00 00:00:00
1 row in set (0.00 sec)
  • 表结构定义
CREATE TABLE `replication_connection_status` (
  `CHANNEL_NAME` char(64) NOT NULL,
  `GROUP_NAME` char(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `SOURCE_UUID` char(36) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL,
  `THREAD_ID` bigint(20) unsigned DEFAULT NULL,
  `SERVICE_STATE` enum('ON','OFF','CONNECTING') NOT NULL,
  `COUNT_RECEIVED_HEARTBEATS` bigint(20) unsigned NOT NULL DEFAULT '0',
  `LAST_HEARTBEAT_TIMESTAMP` timestamp NOT NULL COMMENT 'Shows when the most recent heartbeat signal was received.',
  `RECEIVED_TRANSACTION_SET` longtext NOT NULL,
  `LAST_ERROR_NUMBER` int(11) NOT NULL,
  `LAST_ERROR_MESSAGE` varchar(1024) NOT NULL,
  `LAST_ERROR_TIMESTAMP` timestamp NOT NULL
) ENGINE=PERFORMANCE_SCHEMA DEFAULT CHARSET=utf8

上一篇: replication_connection_configuration表 | 下一篇: replication_group_member_stats表

Clone this wiki locally