欢迎访问机房运维工作室

爱数知识库

AnyBackup-DB2 数据库异机浏览恢复失败,执行输出提示:SQL2539W 警告!

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

AnyBackup-DB2 数据库异机浏览恢复失败,执行输出提示:SQL2539W 警告!

关键字

DB2、SQL2539W

适用产品

· AnyBackup 6.0.x

问题描述

AnyBackup 管理控制台上执行 DB2 数据库异机浏览恢复失败,点击查看详情,显示如下错误信息:

错误,DB2 恢复数据库 LEE1时遇到错误:2539:SQL2539W 警告!正在复原与备份映像数据库相同的现有数据库。数据文件将被删除。


问题影响

AnyBackup 无法完成 DB2 数据库的异机浏览恢复。

问题原因

此问题的可能原因为以下两者之一:

· 原因一,选择恢复的目录存储空间不足。

· 原因二,数据库所属实例的用户对选择恢复的目录没有读写权限。

解决方案

请按照不同的问题原因,选择下面的步骤:

原因一,选择恢复的目录存储空间不足

1. 通过 SSH 工具登录 DB2 数据库异机服务器,执行 df -h <恢复路径> 命令,返回结果中的 Avail 列数值为恢复目录可用空间大小。

df -h /db2/data

下图示例中,恢复目录为 /db2/data/,可用空间为 18 GB 。


2. 通过 SSH 工具登录 DB2 数据库原机服务器,执行以下命令,统计单个数据库大小。对比 DB2 数据库原机服务器数据库总大小和第 1 步中查询的可用空间大小,如果异机服务器恢复目录可用空间小于原机数据库大小,需更换可用空间大于原机数据库大小的恢复目录。

call get_dbsize_info(?,?,?,0)

注意:下图示例中,DATABASESIZE 参数的值为 127877120,以 KB 为单位。


3. 配置浏览恢复选项时,重新选择第 2 步中确认空间充足的恢复目录,进行浏览恢复。


原因二,数据库所属实例的用户对选择恢复的目录没有读写权限

1. 执行以下命令,检查数据库所属实例的用户对选择恢复的目录是否有读写权限,下图示例中,恢复目录为 /db2/data/,目录的属主为 root,属组为 root,权限为 755, 数据库所属实例的用户为 db2inst1,无写权限。

ls -l /db2


2. 执行以下命令,赋予数据库所属实例的用户对恢复目录的读写权限。

注意:请向数据库管理员确认恢复目录是否允许更改权限,命令示例中,数据库所属实例的用户为 db2inst1,具体以实际环境为准。

chown db2inst1:db2inst1 /db2/data

ls -l /db2


更多信息

对于其它类型数据库的恢复,如 Oracle 、MySQL 等,AnyBackup 同时要求恢复的目的端磁盘空间充足,恢复前可查看原机数据文件大小,根据数据量大小调整恢复目的地,保证目标端磁盘空间充足。