开发者社区 > 数据库 > 数据库管理工具 > 正文

DMS无锁变更获取备份失败,提示无法设置,怎么解决?

DMS无锁变更获取备份失败,提示OpenSessionQueryLogEventsFail 无法设置binlog_rows_query_log_events

展开
收起
嘟嘟嘟嘟嘟嘟 2024-06-05 09:20:46 69 0
2 条回答
写回答
取消 提交回答
  • 无锁变更过程中获取备份失败,提示“OpenSessionQueryLogEventsFail 无法设置binlog_rows_query_log_events”可能是因为您的数据库没有正确配置binlog_rows_query_log_events参数。这个参数负责记录执行的SQL语句到binlog中,是进行无锁变更所需的重要设置。
    请确保您的数据库(尤其是RDS MySQL)已经开启了这个参数。如果使用的是PolarDB MySQL版,请参照相关文档开启Binlog。此外,也请检查Binlog的保留时间,确保在该时间段内获取备份数据,因为超过保留时长将无法获取。此回答整理自钉群“DMS数据管理用户交流1群”

    2024-06-05 10:18:42
    赞同 1 展开评论 打赏
  • 原因是无法设置binlog_rows_query_log_events。这个问题通常与MySQL的binlog格式配置相关。
    登录到MySQL服务器,检查当前的binlog格式设置。使用命令:SHOW VARIABLES LIKE 'binlog_format';
    确认binlog_format是否为ROW。DMS无锁变更要求MySQL的binlog格式为ROW。
    修改binlog格式: 如果binlog_format不是ROW,需要修改配置。在MySQL配置文件(如my.cnf或my.ini)中,加入或修改以下行:

    [mysqld]
    binlog_format = ROW
    然后重启MySQL服务使配置生效。

    验证更改: 重启服务后,再次运行SHOW VARIABLES LIKE 'binlog_format';确认设置已更改为ROW。

    检查binlog_rows_query_log_events: 确保binlog_rows_query_log_events变量启用。这通常在ROW模式下默认开启,但仍建议验证:

    SHOW VARIABLES LIKE 'binlog_rows_query_log_events';
    如未开启,同样需要在配置文件中添加:

    binlog_rows_query_log_events = 1
    重启MySQL服务: 每次修改配置文件后,都需要重启MySQL服务以应用更改。

    2024-06-05 09:23:03
    赞同 3 展开评论 打赏

阿里云提供了一系列数据库管理工具,可以满足您在云上进行数据库管理的各种需求。包含数据传输服务DTS、数据库备份 DBS、数据库自治服务 DAS、数据管理 DMS。

相关产品

  • 数据管理
  • 相关电子书

    更多
    金融行业高频交易数据管理解决方案 立即下载
    基于Spark的统一数据管理与数据探索平台 立即下载
    INFINIDATA:基于Spark的统一数据管理与探索平台 立即下载