通过SQL语句管理日志服务

本文介绍了通过SQL语句对PolarDB-X的binlog日志服务进行启动、暂停、重置和滚动刷新的方法。

注意事项

  • 本文描述的SQL语句需要有SUPERREPLICATION CLIENT权限,权限操作请参见账号权限管理

  • PolarDB-X的5.4.17版本及以上系列实例支持本文描述的SQL。

  • 没有WITH子句时,操作对象仅为单流binlog服务。

  • 包含WITH子句时,操作对象为with子句中指定的多流binlog服务。

  • WITH子句中指定的stream_group_name,为开通多流服务时指定的流组名称。

START MASTER

说明

  • binlog日志服务默认为启动状态,如果未执行过STOP MASTER命令,无需执行START MASTER。

  • 通过START MASTER启动服务后,binlog日志的生成将继续。

语法

START MASTER [WITH stream_group_name]

示例

  • 执行以下语句启动单流binlog服务。

    START MASTER;
  • 执行以下语句启动流组名称为group1的多流binlog服务。

    START MASTER WITH group1;

STOP MASTER

说明

  • 暂停服务后,binlog日志的生成将停止。

  • 需合理控制服务的暂停时间,暂停时间过长可能会出现由于DN对应的物理binlog被清理,导致重新启动日志服务后服务无法恢复的问题。DN对应binlog的保留时间设置,请参见本地日志备份

语法

STOP MASTER [WITH stream_group_name]

示例

执行以下语句,可停止单流binlog服务。

STOP MASTER;

执行以下语句,可停止流组名称为group1的多流binlog服务。

STOP MASTER WITH group1;

RESET MASTER

说明

  • 执行RESET MASTER之前,需先通过执行STOP MASTER停止binlog日志服务。

  • 执行RESET MASTER之后,现存的binlog文件将被彻底删除。

  • 执行RESET MASTER之后,binlog文件将以当前时间为新的起点,从编号000001开始重新生成。

  • 执行RESET MASTER之后,需执行START MASTER重新启动binlog服务。

语法

RESET MASTER [WITH stream_group_name]

示例

  • 执行以下语句,可重置单流binlog服务。

    RESET MASTER;
  • 执行以下语句,可重置流组名称为group1的多流binlog服务。

    RESET MASTER WITH group1;

FLUSH LOGS

说明

  • 执行FLUSH LOGS之后,当前编号最大的binlog文件将停止写入,滚动生成一个新的文件进行写入。

  • 该功能暂时只对单流binlog日志服务有效。

语法

FLUSH LOGS;

示例

  • 执行以下语句,可实现binlog文件的滚动刷新。

    FLUSH LOGS;
  • 刷新前,单流binlog编号最大的日志文件为binlog.000004

    show binary logs;
    +---------------+-----------+
    | LOG_NAME      | FILE_SIZE |
    +---------------+-----------+
    | binlog.000001 |     20968 |
    | binlog.000002 |  10489381 |
    | binlog.000003 |  10486003 |
    | binlog.000004 |    361752 |
    +---------------+-----------+
  • 刷新后,单流binlog编号最大的日志文件变为binlog.000005

    show binary logs;
    +---------------+-----------+
    | LOG_NAME      | FILE_SIZE |
    +---------------+-----------+
    | binlog.000001 |     20968 |
    | binlog.000002 |  10489381 |
    | binlog.000003 |  10486003 |
    | binlog.000004 |    361752 |
    | binlog.000005 |       260 |
    +---------------+-----------+