【问题标题】:DB2 INCREMENTAL BACKUP RESTORYDB2 增量备份恢复
【发布时间】:2018-01-29 13:11:50
【问题描述】:

我们在 Windows Server 2008 R2 上使用 IBM DB2 10.1。

我尝试测试 DB2 的恢复计划。

  1. 我创建了一个新数据库

CREATE DATABASE EAPOTEST AUTOMATIC STORAGE YES ALIAS EAPOBLOB

  1. 创建缓冲区池和表空间

CREATE BUFFERPOOL "BufferPool32" IMMEDIATE ALL DBPARTITIONNUMS SIZE AUTOMATIC NUMBLOCKPAGES 0 PAGESIZE 32 K

CREATE REGULAR TABLESPACE "tablespace1"
IN DATABASE PARTITION GROUP "IBMDEFAULTGROUP"
PAGESIZE 32 K
MANAGED BY AUTOMATIC STORAGE
AUTORESIZE YES
EXTENTSIZE 16
PREFETCHSIZE 16
BUFFERPOOL "BufferPool32"
OVERHEAD 10.5
TRANSFERRATE 0.14
DATA TAG NONE
USING STOGROUP "IBMSTOGROUP"
FILE SYSTEM CACHING
  1. 创建 2 个简单的表。

CREATE TABLE "DB2ADMIN"."ARTIFACT_FILE1" ( "FILE_ID" DECIMAL(10 , 0) NOT NULL GENERATED BY DEFAULT AS IDENTITY ( START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 9999999999 NO CYCLE CACHE 20 NO ORDER ),"FILE_TYPE" VARCHAR(1) NOT NULL) DATA CAPTURE NONE IN "tablespace1" COMPRESS NO

CREATE TABLE "DB2ADMIN"."EA_PACKAGE1" (
"DOSSIER_NUMBER" VARCHAR(50) NOT NULL 
)
DATA CAPTURE NONE 
IN "tablespace1"
COMPRESS NO
  1. 为每个表添加一行。
  2. 启用增量备份

UPDATE DATABASE CONFIGURATION FOR EAPOTEST USING TRACKMOD YES

  1. 准备完整的离线备份。

BACKUP DATABASE EAPOTEST TO %DB_PATH_BACKUP% COMPRESS EXCLUDE LOGS WITHOUT PROMPTING

  1. 之后,我对数据库进行了一些更改,并进行了离线增量备份。

BACKUP DATABASE EAPOTEST INCREMENTAL TO %DB_PATH_BACKUP% COMPRESS EXCLUDE LOGS WITHOUT PROMPTING

  1. 删除数据库。

DROP DATABASE EAPOTEST

  1. 恢复完整备份。 好的。

RESTORE DB EAPOTEST FROM "..." TAKEN AT ... REPLACE HISTORY FILE WITHOUT PROMPTING

  1. 恢复增量备份。

RESTORE DATABASE EAPOTEST INCREMENTAL FROM "..." TAKEN AT ... WITHOUT PROMPTING

消息是:SQL2540W Восстановление успешно, однако при работе утилиты 数据库“2539”。

无法访问 Dtabese! 当我尝试连接时: SQL1119N SQLSTATE=57019

这种备份方法是否可行,我们采取的备份和恢复步骤是否足够?

【问题讨论】:

  • 为什么要在标题中对我们大喊大叫?

标签: database db2 database-backups db2-luw


【解决方案1】:

您的程序不正确。您的第一次还原应该引用目标增量映像。

RESTORE DATABASE ... INCREMENTAL FROM "..." TAKEN AT <incremental backup timestamp>
RESTORE DATABASE ... INCREMENTAL FROM "..." TAKEN AT <full backup timestamp>
RESTORE DATABASE ... INCREMENTAL FROM "..." TAKEN AT <incremental backup timestamp>

这个解释很详细in the manual

【讨论】:

  • 此外,如果您要恢复到一个已经存在的数据库,您将需要使用“REPLACE EXISTING”命令行选项。否则,还原时的“无提示”将强制执行非零退出代码(即失败)。
猜你喜欢
  • 1970-01-01
  • 2013-06-18
  • 2016-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-06
相关资源
最近更新 更多