在對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盤下存在的文件夾