GaussDB(for MySQL)服务如何开启并查看Binlog文件?
本章节介绍开启Binlog、查看Binlog的方法,以及开启Binlog后对GaussDB(for MySQL)的性能影响。
开启Binlog
GaussDB(for MySQL)不支持只读节点开启Binlog。
- 登录管理控制台。
- 单击管理控制台左上角的,选择区域和项目。
- 在页面左上角单击,选择 。
- 选中要开启Binlog的实例,单击实例名称,进入实例详情界面。
- 在实例详情界面,单击参数修改,跳转到参数界面。
- 按照如下条件设置日志参数。
- 当内核版本小于2.0.45.230900时,搜索“log-bin”参数,在值列下拉框中选择“ON”,单击保存。该参数修改完成后,需要重启实例才可生效。
内核版本可以在实例概览页面,处进行查看。图1 查看内核版本
- 当内核版本大于或等于2.0.45.230900时,搜索“rds_global_sql_log_bin”参数,在值列下拉框中选择“ON”,单击保存。该参数修改后,立即生效,不需要重启实例。
通过该方式开启Binlog后,需要连接数据库执行如下命令,确认是否所有线程均已成功开启Binlog。
select @@session.rds_sql_log_bin_inconsistent_count;
rds_sql_log_bin_inconsistent_count表示所有用户连接上sql_log_bin的设置和rds_global_sql_log_bin的设置不一致的个数。
- 查询结果为0时,代表所有线程均已成功开启Binlog,所有需要记录Binlog的语句都会被记录到Binlog中,此时才能做全量备份。
- 查询结果不为0时,可以继续执行如下命令,查看尚未成功开启Binlog的线程ID。
这些查询到的线程ID中执行的语句可能暂时未能被记录到Binlog中。
您可以根据获取到的线程ID(例如:图2中“53”)排查自身业务,根据业务需要及时提交或回滚事务并执行新事务(例如:SELECT 1;),或者对于空闲连接进行断开重连操作。
- 当内核版本小于2.0.45.230900时,搜索“log-bin”参数,在值列下拉框中选择“ON”,单击保存。该参数修改完成后,需要重启实例才可生效。
查看Binlog文件
- 参考连接实例,连接数据库实例。
- 执行以下SHOW BINLOG命令可以直接读取Binlog日志。
SHOW BINLOG EVENTS [IN 'log_name'] [FROM pos] [LIMIT [offset,] row_count];
如果提示账号权限不足,请使用root账号登录查询。