欢迎访问机房运维工作室

爱数知识库

AnyBackup-达梦数据库原机表空间恢复失败,执行输出提示错误:err_msg = 指定或者默认归档目录中找不到完整归档日志

频道:爱数知识库 日期: 浏览:23

AnyBackup-达梦数据库原机表空间恢复失败,执行输出提示错误:err_msg = 指定或者默认归档目录中找不到完整归档日志

关键字

达梦、归档日志、表空间恢复

适用产品

  • AnyBackup CDM 7.0.9 及以上版本
  • AnyBackup Express 7.0.9 及以上版本

问题描述

在 AnyBackup 管理控制台上,对达梦数据库进行原机表空间恢复时,执行输出中显示如下错误信息:

err_msg = 指定或者默认归档目录中找不到完整归档日志, err_code = -8216(错误提供者:dmBackup,错误值:452132864) 异常提供者:dmdbmanager,异常号:452132868。

问题影响

AnyBackup 无法成功完成达梦数据库原机表空间恢复。

问题原因

AnyBackup 原机恢复达梦数据库表空间时会利用原机本地的归档日志将表空间恢复至最新可用状态,当恢复所需的原机数据库归档目录下的归档日志缺失时,会导致表空间恢复失败。

解决方案

为了解决此问题,需要手动将恢复所需的归档日志恢复到原机实例的归档目录中,然后再使用 AnyBackup 进行原机表空间恢复。请按照以下步骤执行:
1.通过 SSH 工具登录达梦数据库所在服务器,切换至达梦数据库安装用户,以达梦数据库安装用户为 dmdba 为例。

su - dmdba

2.查询数据库备份还原日志 dm_BAKRES_<日期>.log,找到原机恢复表空间时所需的归档日志 lns 和 seq 范围,以备份恢复日志产生日期为 202103,恢复数据库的时间为 2021-03-02 13:48:54 为例。

cat $DM_HOME/log/dm_BAKRES_202103.log | grep begin_lsn

以上图为例,查询结果显示,恢复该表空间所需的归档日志 lsn 与 seq 起始号分别为 begin_lsn=104139,begin_seq=1093。结束号分别为 end_lsn=104177,end_seq=1121。

3.将包含第2步中查到的 lns 和 seq 范围的归档日志手动恢复到数据库归档目录下。
注意:AnyBackup 进行达梦数据库原机表空间恢复时,需要使用数据库本地的归档日志,达梦数据库本地的归档日志备份恢复由数据库管理员维护。
4.重新使用 AnyBackup 进行原机表空间恢复。
警告:原机恢复表空间会对同名表空间进行覆盖。

更多信息

1.使用 AnyBackup 进行原机表空间恢复当前只支持将表空间恢复为最新可用状态,无法恢复删除的数据,数据恢复建议使用实例恢复。
2.查询达梦数据库归档路径请登录数据库执行以下命令:SELECT ARCH_DEST FROM V$DM_ARCH_INI;