数据追踪功能可以快速按需找到目标时间段内的相关更新信息,并生成逆向回滚语句。本文介绍如何使用数据追踪功能。
背景信息
在日常访问数据库时,可能由于误更新、误删除、误写入等原因导致数据不符合预期,需要将数据库恢复至正常状态。相比于恢复全量数据、恢复库表,使用DMS数据追踪进行恢复更快速、便捷。
更多数据恢复方案,请参见数据恢复方案概览。
数据追踪与其他恢复方案的区别
恢复方案 | 恢复原理 | 费用 | 恢复速度 | 恢复范围 |
数据追踪 | 按需追踪到目标时间段内的相关更新,汇总生成逆向的回滚语句,并通过数据变更工单最终执行到数据库中完成数据的恢复。 |
| 快 | 取决于管控模式和Binlog日志保留时长。 |
恢复全量数据到新实例,验证数据后,再将数据迁回原实例、其他实例或本地数据库。 | 慢 | 取决于日志备份和数据备份保留时长,最大730天。备份保留时长设置,请参见备份设置。 | ||
需要提前开启库表备份功能,可以恢复指定的库表到新实例或已有实例,恢复到已有实例会触发主备切换。 |
| 慢 | 取决于开启库表备份的时间点和日志备份保留时间,日志备份保留时间最大730天。更多信息,请参见库表级备份。 |
前提条件
数据库类型为MySQL,且MySQL为5.6及以上版本。
数据库已开启Binlog。
- 数据库已登录。说明 管控模式为自由操作与稳定变更的数据库实例需要先登录,安全协同的数据库实例请忽略,更多关于管控模式的信息,请参见管控模式。
注意事项
自由操作模式的实例:支持追踪30分钟内进行的DML操作,且无法导出回滚、重建脚本。
稳定变更、安全协同模式的实例:无查询时间限制,可批量下载脚本。
操作步骤
- 登录数据管理DMS 5.0。
在顶部菜单栏中,选择 。
说明若您使用的是极简模式的控制台,请单击控制台左上角的图标,选择
。在页面右上角,单击数据追踪。
在数据追踪工单申请页面,配置如下信息:
参数名
说明
任务名称
便于后续检索,并提供给审批人员清晰的操作意图。
库名
指定数据库实例上某个具体数据库(需要在DMS内有数据库的操作权限,输入库名前缀后可出现联想提示)。
表名
在指定的目标表中进行检索,支持添加多张表。
追踪类型
支持多选,可按需选中检索的操作。
插入:插入类型的回滚语句为
DELETE
。更新:更新类型的回滚语句为
UPDATE
。删除:删除类型的回滚语句为
INSERT
。
时间范围
选择追踪的时间范围。
管控模式为自由操作的实例,仅支持追踪30分钟范围内的数据。
管控模式为稳定变更和安全协同的实例不限制数据范围,在一个工单中最多可选择48小时,若超过48小时可分段提交多次工单。
变更相关人
可按需选择,非工单参与人、审批人,不可见工单详情。
单击提交申请,系统将获取日志文件。
获取日志文件后,系统会进入审批环节。
说明若Binlog未开启或数据库未登录,系统将无法获取日志文件。
等待审批通过。
说明目前,数据追踪的默认安全审批规则为数据库对应的DBA进行审批。更多关于数据追踪的审批规则请参见数据追踪安全规则。
审批通过后,系统会进行日志下载、日志解析等操作。
待解析完成后,您可以勾选需要回滚的变更记录,单击导出回滚脚本即可。
您还可以进行如下操作:
勾选多条记录,批量导出,默认每页显示10条,最多显示单页200条,您可以按需选择。
单击目标记录右侧的查看详情按钮,查看明细以及拷贝对应回滚语句。
在追踪类型栏中进行筛选,快速筛选插入、更新、删除类型的记录。
后续步骤
导出回滚脚本后,您可以提交普通数据变更工单,将此回滚脚本作为附件上传至工单中,执行至目标数据库中。更多信息,请查看普通数据变更。