暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DB2的备份与恢复

是饭米粒儿啊 2017-01-05
693

-- 离线备份数据库test

db2 backup database test to  compress

--使用db2ckbkp 测试备份映像完整性,备份信息


--备份表空间

backup database test tablespace ( userspace1 ) to /dbbak/tbs1/ with 2 buffers buffer 1024 parallelism 1 without prompting


--恢复数据库test

db2 restore db test from /dbbak taken at 20110101010101 into testnew 


-- 恢复时重新指派表空间文件,数据文件

RESTORE DATABASE test FROM /dbbak TAKEN AT 20110101010101 WITH 2 BUFFERS BUFFER 1024 REDIRECT PARALLELISM 1 WITHOUT PROMPTING;

SET TABLESPACE CONTAINERS FOR 0 IGNORE ROLLFORWARD CONTAINER OPERATIONS USING (FILE /dbfile/db001 51200);

SET TABLESPACE CONTAINERS FOR 1 IGNORE ROLLFORWARD CONTAINER OPERATIONS USING (FILE /dbfile/db002 51200);

SET TABLESPACE CONTAINERS FOR 2 IGNORE ROLLFORWARD CONTAINER OPERATIONS USING (FILE /dbfile/db003 51200);

RESTORE DATABASE test CONTINUE;




--- 启用增量备份参数

db2 update db cfg for test using TRACKMOD on


--设置归档日志目录,要先改 LOGRETAIN,再改 LOGARCHMETH1

db2 update db cfg for test using LOGRETAIN RECOVERY


mkdir /db2log/testlog

db2 update db cfg for test using LOGARCHMETH1 DISK:/db2log/testlog/


--- 修改 TRACKMOD 参数后需要做一次完全备份

db2 backup database test to . compress




--增量备份 上一次完整备份至本次备份之间变化的内容

db2 backup database test online incremental to . compress


--差量(delta)备份 上次备份以来(完整备份、增量备份、差量备份)至本次备份之间变化的内容

db2 backup database test online incremental delta to . compress


 

--- 在保存备份文件与增量备份文件的目录执行, TS 为最后一个增量备份文件的时间,给出恢复步骤建议

db2ckrst -d test -t 20110101010101 -r database



--- 使用增量备份文件的恢复方法:时间戳为(最新的,最新完整的,最新的) . 没完成最后一步SQL1119N,完成后就是普通恢复后的SQL1117N

---- 使用增量备份则只需要最新的完整备份,最新的增量备份,最新增量备份时及以后的日志文件

---- 使用delta备份则需要最新的完整备份,以及(或者)最新的增量备份之后的delta备份及日志文件

RESTORE DATABASE test INCREMENTAL FROM /dbbak TAKEN AT 20110101010101 TO /db/path WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING

RESTORE DATABASE test INCREMENTAL FROM /dbbak TAKEN AT 20110101011501 TO /db/path WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING

RESTORE DATABASE test INCREMENTAL FROM /dbbak TAKEN AT 20110101013001 TO /db/path WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING


--把最后增量备份时及以后的日志文件复制回原日志目录,执行前滚操作

rollforward db test to end of logs and complete [ noretrieve ]

rollforward db test to end of logs and stop


----可能会出现的错误--------------------------------------------------------------------------------------------

SQL2426N 尚未配置数据库以允许增量备份操作。原因码 = "2"。 改db cfg logarchmeth1 trackmod

SQL1117N 因为处于 ROLL-FORWARD PENDING 状态,所以不能连接或激活数据库 "TEST"。 SQLSTATE=57019 rollforward ..

SQL1265N 归档日志文件 "S0002005.LOG" 与节点 "0" 上数据库 "TEST" 的当前日志序列不相关。 **stop**

SQL4970N 在数据库分区 "0" 上,对数据库 "TEST" 执行的前滚恢复操作无法到达指定的停止点(日志末尾或时间点)。

          前滚恢复操作在处理日志文件 "S0002005.LOG" 时停止。 **complete**

SQL2573N 必须将增量备份映像作为增量 RESTORE 操作的一部分来复原。

SQL2528W 警告!复原到与备份映像数据库相同的现有数据库,但现有数据库的别名 "TEST" 与备份映像的别名 "TEST" 不匹配,且现有数据库的数据库名称 "TEST"

          与备份映像的数据库名称 "TEST" 不匹配。目标数据库将被备份版本覆盖。想要继续吗?(y/n)

SQL1119N 因为先前复原不完整或者仍在进行,所以不能连接或激活数据库 "TEST"。SQLSTATE=57019 **** 用增量备份恢复的步骤不完整 ****


SQL2537N 在 Restore 之后,需要“前滚”。





从TSM还原

db2 restore db db_name use tsm at 时间点

db2 rollforward db db_name to 时间点 using local time and stop

rollforward的时间点要晚于restore的时间点


文章转载自是饭米粒儿啊,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论