在对DB2中表空间的备份时候,当报错“SQL2421N 不允许表空间级备份,因为未启用前滚恢复”,原因及解决方法如下:
------------------------------ 输入的命令 ------------------------------
backup database STUDENT
tablespace(syscatspace,userspace1)
online to
f:/ibmsoft_backup;
------------------------------------------------------------------------------
backup database STUDENT tablespace(syscatspace,userspace1) online to f:/ibmsoft_backup
SQL2421N 不允许表空间级备份,因为未启用前滚恢复。
SQL2421N 不允许表空间级备份,因为未启用前滚恢复。
出现错误的场景如上
出错是因为当前数据库是循环日志
使用命令
------------------------------ 输入的命令 ------------------------------
Db2 connect to student
db2 get db cfg
------------------------------------------------------------------------------
结果显示:
------------------------------------------------------------------------------
DISK:将归档日志存放到磁盘上
TSM:将归档日志存放到TSM服务器
BAR APIs:第三方厂商提供的产品
DB2在版本8.2中增加了如下配置参数
:
第一个日志归档方法 (LOGARCHMETH1) = OFF
logarchmeth1 的选项 (LOGARCHOPT1) =
第二个日志归档方法 (LOGARCHMETH2) = OFF
logarchmeth2 的选项 (LOGARCHOPT2) =
故障转移日志归档路径 (FAILARCHPATH) =
错误时重试日志归档次数 (NUMARCHRETRY) = 5
日志归档重试延迟(秒) (ARCHRETRYDELAY) = 20
供应商选项 (VENDOROPT) =
------------------------------------------------------------------------------
OFF 指定不使用日志归档方法。如果 logarchmeth1 和logarchmeth2 都设置为 OFF,则认为数据库正在使用循环日志记录,且不可前滚恢复。这是缺省值。
由此可以看出数据库是循环日志,必须先把数据库修改成归档日志
------------------------------ 输入的命令 ------------------------------
Db2 update db cfg for student using LOGARCHMETH1 logretain
Db2 update db cfg for student using userexit on
------------------------------------------------------------------------------
执行完后,再运行命令
------------------------------ 输入的命令 ------------------------------
Db2 connect to student
db2 get db cfg
------------------------------------------------------------------------------
结果显示:
------------------------------------------------------------------------------
DISK:将归档日志存放到磁盘上
TSM:将归档日志存放到TSM服务器
BAR APIs:第三方厂商提供的产品
DB2在版本8.2中增加了如下配置参数
:
第一个日志归档方法 (LOGARCHMETH1) = LOGRETAIN
logarchmeth1 的选项 (LOGARCHOPT1) =
第二个日志归档方法 (LOGARCHMETH2) = OFF
logarchmeth2 的选项 (LOGARCHOPT2) =
故障转移日志归档路径 (FAILARCHPATH) =
错误时重试日志归档次数 (NUMARCHRETRY) = 5
日志归档重试延迟(秒) (ARCHRETRYDELAY) = 20
供应商选项 (VENDOROPT) =
------------------------------------------------------------------------------
然后再对数据库进行完全脱机备份
------------------------------ 输入的命令 ------------------------------
Backup database student
Offline to
F:/ibmsoft_backup
------------------------------------------------------------------------------
上面两步做完之后再
------------------------------ 输入的命令 ------------------------------
backup database STUDENT
tablespace(syscatspace,userspace1)
online to
f:/ibmsoft_backup;
------------------------------------------------------------------------------
就会命令成功。
注:其中命令都是在cmd—>db2cmd下运行的
Ibmasoft_backup必须是f盘下存在的文件夹