因工作需要将一远程服务器上的DB2数据库进行备份,然后迁移到本地一台服务器上。思路应该是很简单的,无非就是备份、还原,可以使用控制中心也可以使用命令来实现。为了方便,我直接控制中心来操作。
1、将数据库备份到远程服务器上的E:/DB_back,备份文件的完整目录为:
E:/DB_back:/BEHAVEOG.0/DB2/NODE0000/CATN0000/20090311/181504.001
2、由于数据库较大,下来2g左右,因此通过web架构、迅雷下载的方式,将备份文件下载下来(持续了几个小时)
3、按照原有数据的文件布局,在E盘的DbBack文件夹中依次建立相关的文件夹,完整信息如下
E:/DbBack:/BEHAVEOG.0/DB2/NODE0000/CATN0000/20090311/181504.001
4、通过控制中心还原数据库,过程就不多说,无非就是选择路径,下一步下一步。但不幸的是在点完“完成”按钮后,1,2秒的时间就弹出以下提示:
SQL2542N 根据所提供的源数据库别名 "BEHAVEOG" 和时间戳记
"20090311181504",找不到数据库映像文件的匹配项。
解释:
备份映像文件文件名由数据库别名和时间戳记组件组成。文件名根据
Database Restore
调用中提供的源数据库别名和时间戳记参数构造。源目录中不存在与提供的
源数据库别名和时间戳记相匹配的文件名。如果从自动增量式复原接收到此
错误,则根据数据库历史中的时间戳记和位置找不到必需的映像。
用户响应:
确保数据库备份映像驻留在介质源上。重新提交操作,并指定正确的时间戳
记来生成匹配。
如果从自动增量复原中接收到此错误,则检查相应的备份条目的数据库历史
,并验证列示的位置是否与备份映像的实际位置相匹配。要么更新数据库历
史,并重试该操作,以生成匹配项,或者发出 RESTORE INCREMENTAL ABORT
命令来清除在处理期间可能已经创建的任何资源。
5、试验多次,仍然失败,只能求助于搜索,后发现 有帖子说“DB2数据库,备份文件目录是不能改的。”
因此怀疑是该问题导致,遂进行试验。
将本地服务器备份文件路径更改为与远程服务器相同,即“ E:/DB_back:/BEHAVEOG.0/DB2/NODE0000/CATN0000/20090311/181504.001”,再进行操作,成功!!~~
6、确定该问题为备份文件路径所致。
感慨,DB2某些限制真够烦人。