1. 程式人生 > >db2資料庫的備份和恢復!!! (以window平臺為例)

db2資料庫的備份和恢復!!! (以window平臺為例)

       1. 建立好新的資料庫後,首先做一個離線的全備。. E:/Program Files/IBM/SQLLIB/BIN>;db2 connect to sample    #聯接到資料庫。    資料庫連線資訊  資料庫伺服器         = DB2/NT 8.1.0  SQL 授權標識        = ADMINIST...  本地資料庫別名       = SAMPLE E:/Program Files/IBM/SQLLIB/BIN>;db2 list applications       #顯示資料庫應用狀態 授權標識  應用程式名    應用程式    應用程式標識                DB      代理程序                         控制代碼                                    名稱    序列號 -------- -------------- ---------- ------------------------------ -------- ---- ADMINIST>;db2bp.exe      49         *LOCAL.DB2.003A47092910        SAMPLE   1 ADMINIST>;javaw.exe      48         *LOCAL.DB2.005F07092627        SAMPLE   1 ADMINIST>;javaw.exe      47         *LOCAL.DB2.005F07092626        SAMPLE   1 E:/Program Files/IBM/SQLLIB/BIN>;db2 force applications all   #停掉資料庫應用。 DB20000I  FORCE APPLICATION 命令成功完成。 DB21024I  該命令為非同步的,可能不會立即生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 backup database sample to e:/db2/backup  #做離線的全備。 備份成功。此備份映象的時間戳記是:20030507173349 E:/Program Files/IBM/SQLLIB/BIN>;db2 list history backup all for sample   #檢視備份歷史記錄                      列示 sample 的歷史檔案 匹配的檔案條目數 = 1  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507173349001   F    D  S0000000.LOG S0000000.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE OFFLINE  開始時間:20030507173349    結束時間:20030507173410  ----------------------------------------------------------------------------   00001 位置:e:/db2/backup/SAMPLE.0/DB2/NODE0000/CATN0000/20030507 2.如果要做線上的備份,要對兩個引數作修改: USEREXIT和LOGRETAIN,將其修改為on,他們預設是off的,預設使用迴圈日誌模式,修改完引數後,可以變為歸檔日誌模式,啟用了userexit做資料庫日誌的歸檔。 E:/Program Files/IBM/SQLLIB/BIN>;db2 get db cfg   #檢視資料庫當前的屬性。        資料庫  的資料庫配置  資料庫配置發行版級別                    = 0x0a00  資料庫發行版級別                                  = 0x0a00  資料庫領域                                      = CN  資料庫內碼表                                      = 1386  資料庫程式碼集                                       = GBK  資料庫國家/地區程式碼                            = 86  動態 SQL 查詢管理           (DYN_QUERY_MGMT) = DISABLE  對此資料庫的 Discovery 支援       (DISCOVER_DB) = ENABLE  預設查詢優化類         (DFT_QUERYOPT) = 5  並行度                      (DFT_DEGREE) = 1  在算術異常時繼續   (DFT_SQLMATHWARN) = NO  預設重新整理有效期                   (DFT_REFRESH_AGE) = 0  保留的高頻值的數目     (NUM_FREQVALUES) = 10  保留的分位點數目            (NUM_QUANTILES) = 20  備份暫掛                                          = NO  資料庫是一致的                                  = YES  前滾暫掛                                     = NO  復原暫掛                                         = NO  啟用的多頁檔案分配                      = NO  恢復狀態的日誌保留                          = NO  記錄狀態的使用者出口                            = NO  Data Links 標記失效時間間隔(秒)      (DL_EXPINT) = 60  Data Links 寫標記初始時間間隔 (DL_WT_IEXPINT) = 60  副本的 Data Links 數目             (DL_NUM_COPIES) = 1  刪除後的 Data Links 時間(天數)        (DL_TIME_DROP) = 1  大寫的 Data Links 標記                (DL_UPPER) = NO  Data Links 標記演算法                           (DL_TOKEN) = MAC0  資料庫堆(4KB)                            (DBHEAP) = 300  資料庫共享記憶體大小(4KB)  (DATABASE_MEMORY) = AUTOMATIC  目錄快取記憶體大小(4KB)              (CATALOGCACHE_SZ) = (MAXAPPLS*4)  日誌緩衝區大小(4KB)                        (LOGBUFSZ) = 8  實用程式堆大小(4KB)                (UTIL_HEAP_SZ) = 5000  緩衝池大小(頁)                     (BUFFPAGE) = 250  擴充儲存段大小(4KB)    (ESTORE_SEG_SZ) = 16000  擴充儲存段的數目   (NUM_ESTORE_SEGS) = 0  鎖定列表的最大儲存量(4KB)              (LOCKLIST) = 25  應用程式組記憶體集的最大大小(4KB)(APPGROUP_MEM_SZ) = 10000  應用程式組堆的記憶體百分比  (GROUPHEAP_RATIO) = 70  最大應用程式控制堆大小(4KB)     (APP_CTL_HEAP_SZ) = 64  共享排序的排序堆域值(4KB) (SHEAPTHRES_SHR) = (SHEAPTHRES)  排序列表堆(4KB)                         (SORTHEAP) = 256  SQL 語句堆(4KB)                     (STMTHEAP) = 2048  預設應用程式堆(4KB)             (APPLHEAPSZ) = 256  程式包快取記憶體大小(4KB)                   (PCKCACHESZ) = (MAXAPPLS*8)  統計資訊堆大小(4KB)               (STAT_HEAP_SZ) = 4384  檢查死鎖的時間間隔(ms)         (DLCHKTIME) = 10000  每個應用程式的鎖定百分比列表       (MAXLOCKS) = 22  鎖定超時(秒)                        (LOCKTIMEOUT) = -1  更改的頁閾值               (CHNGPGS_THRESH) = 60  非同步頁清除程式的數目   (NUM_IOCLEANERS) = 1  I/O 伺服器的數目                   (NUM_IOSERVERS) = 3  索引排序標誌                             (INDEXSORT) = YES  順序檢測標誌                      (SEQDETECT) = YES  預設預取大小(頁)         (DFT_PREFETCH_SZ) = 16  跟蹤修改的頁數                         (TRACKMOD) = OFF  容器的預設數目                            = 1  預設表空間資料塊大小(頁)   (DFT_EXTENT_SZ) = 32  活動應用程式的最大數目            (MAXAPPLS) = AUTOMATIC  活動應用程式的平均數目       (AVG_APPLS) = 1  每個應用程式的最大開啟 DB 檔案數            (MAXFILOP) = 64  日誌檔案大小(4KB)                         (LOGFILSIZ) = 250  主日誌檔案的數目                (LOGPRIMARY) = 3  輔助日誌檔案的數目               (LOGSECOND) = 2  已更改的至日誌檔案的路徑                   (NEWLOGPATH) =  日誌檔案路徑                                            = E:/DB2/NODE0000/SQL00 001/SQLOGDIR/  溢位日誌路徑                     (OVERFLOWLOGPATH) =  映象日誌路徑                         (MIRRORLOGPATH) =  第一活動日誌檔案                                        =  磁碟上已滿的塊日誌                (BLK_LOG_DSK_FUL) = NO  事務使用的最大活動日誌空間的百分比(MAX_LOG) = 0  1 個活動 UOW 的活動日誌檔案的數目 (NUM_LOG_SPAN) = 0  組落實計數                          (MINCOMMIT) = 1  軟檢查點前回收的日誌檔案的百分比 (SOFTMAX) = 100  啟用的恢復的日誌保留             (LOGRETAIN) = OFF        這兩個引數預設是off   啟用的記錄的使用者出口                (USEREXIT) = OFF  啟用的自動重新啟動                      (AUTORESTART) = ON  索引重新建立時間                       (INDEXREC) = SYSTEM (ACCESS)  loadrec 會話的預設數目    (DFT_LOADREC_SES) = 1  要保留的資料庫備份的數目   (NUM_DB_BACKUPS) = 12  恢復歷史記錄保留(天數)     (REC_HIS_RETENTN) = 366  TSM 管理類                   (TSM_MGMTCLASS) =  TSM 節點名                            (TSM_NODENAME) =  TSM 所有者                                   (TSM_OWNER) =  TSM 密碼                             (TSM_PASSWORD) = E:/Program Files/IBM/SQLLIB/BIN>;db2 update db cfg for sample using userexit on #設定引數 DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。 SQL1363W  為立即修改而提交的一個或多個引數未動態更改。對於這些配置引數,必須在所有應用程式都與此資料庫斷開連線之後,更改才會生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 update db cfg for sample using logretain on #設定引數 DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。 SQL1363W  為立即修改而提交的一個或多個引數未動態更改。對於這些配置引數,必須在所有應用程式都與此資料庫斷開連線之後,更改才會生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 force application all      #停掉應用 DB20000I  FORCE APPLICATION 命令成功完成。 DB21024I  該命令為非同步的,可能不會立即生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 connect to sample       #此時需要做一次離線的全備。否則是backup pending狀態的。 SQL1116N  由於 BACKUP PENDING,不能執行連線或啟用資料庫 "SAMPLE"。 SQLSTATE=57019 E:/Program Files/IBM/SQLLIB/BIN>;db2 backup database sample to e:/db2/backup 備份成功。此備份映象的時間戳記是:20030507201421 E:/Program Files/IBM/SQLLIB/BIN>;db2 connect to sample      #此時可以連線    資料庫連線資訊  資料庫伺服器         = DB2/NT 8.1.0  SQL 授權標識        = ADMINIST...  本地資料庫別名       = SAMPLE E:/Program Files/IBM/SQLLIB/BIN>;db2 list applications 授權標識  應用程式名    應用程式    應用程式標識                DB      代理程序                         控制代碼                                    名稱    序列號 -------- -------------- ---------- ------------------------------ -------- ----- ADMINIST>;db2bp.exe      62         *LOCAL.DB2.008C87122531        SAMPLE   1 E:/Program Files/IBM/SQLLIB/BIN>;db2 backup database sample online to e:/db2/back #線上的備份成功 Online 備份成功。此備份映象的時間戳記是:20030507202717 3.修改引數,使資料庫能夠做到增量備份。必須要修改trackmod為 on 狀態,並有一次完全備份。 E:/Program Files/IBM/SQLLIB/BIN>;db2 update db cfg for sample using trackmod yes #修改引數 DB20000I  UPDATE DATABASE CONFIGURATION 命令成功完成。 E:/Program Files/IBM/SQLLIB/BIN>;db2 force application all DB20000I  FORCE APPLICATION 命令成功完成。 DB21024I  該命令為非同步的,可能不會立即生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 backup database sample to e:/db2/backup 備份成功。此備份映象的時間戳記是:20030507203403 E:/Program Files/IBM/SQLLIB/BIN>;db2 backup database sample online incremental de lta to e:/db2/backonline      #線上的差分備份,也可以用增量備份 備份成功。此備份映象的時間戳記是:20030507213106 E:/Program Files/IBM/SQLLIB/BIN>;db2 connect to sample    資料庫連線資訊  資料庫伺服器         = DB2/NT 8.1.0  SQL 授權標識        = ADMINIST...  本地資料庫別名       = SAMPLE E:/Program Files/IBM/SQLLIB/BIN>;db2 get db cfg  #再次檢視當前的資料庫狀態        資料庫  的資料庫配置  資料庫配置發行版級別                    = 0x0a00  資料庫發行版級別                                  = 0x0a00  資料庫領域                                      = CN  資料庫內碼表                                      = 1386  資料庫程式碼集                                       = GBK  資料庫國家/地區程式碼                            = 86  動態 SQL 查詢管理           (DYN_QUERY_MGMT) = DISABLE  對此資料庫的 Discovery 支援       (DISCOVER_DB) = ENABLE  預設查詢優化類         (DFT_QUERYOPT) = 5  並行度                      (DFT_DEGREE) = 1  在算術異常時繼續   (DFT_SQLMATHWARN) = NO  預設重新整理有效期                   (DFT_REFRESH_AGE) = 0  保留的高頻值的數目     (NUM_FREQVALUES) = 10  保留的分位點數目            (NUM_QUANTILES) = 20  備份暫掛                                          = NO  資料庫是一致的                                  = YES  前滾暫掛                                     = NO  復原暫掛                                         = NO  啟用的多頁檔案分配                      = NO  恢復狀態的日誌保留                          = RECOVERY  記錄狀態的使用者出口                            = YES  Data Links 標記失效時間間隔(秒)      (DL_EXPINT) = 60  Data Links 寫標記初始時間間隔 (DL_WT_IEXPINT) = 60  副本的 Data Links 數目             (DL_NUM_COPIES) = 1  刪除後的 Data Links 時間(天數)        (DL_TIME_DROP) = 1  大寫的 Data Links 標記                (DL_UPPER) = NO  Data Links 標記演算法                           (DL_TOKEN) = MAC0  資料庫堆(4KB)                            (DBHEAP) = 300  資料庫共享記憶體大小(4KB)  (DATABASE_MEMORY) = AUTOMATIC  目錄快取記憶體大小(4KB)              (CATALOGCACHE_SZ) = (MAXAPPLS*4)  日誌緩衝區大小(4KB)                        (LOGBUFSZ) = 8  實用程式堆大小(4KB)                (UTIL_HEAP_SZ) = 5000  緩衝池大小(頁)                     (BUFFPAGE) = 250  擴充儲存段大小(4KB)    (ESTORE_SEG_SZ) = 16000  擴充儲存段的數目   (NUM_ESTORE_SEGS) = 0  鎖定列表的最大儲存量(4KB)              (LOCKLIST) = 25  應用程式組記憶體集的最大大小(4KB)(APPGROUP_MEM_SZ) = 10000  應用程式組堆的記憶體百分比  (GROUPHEAP_RATIO) = 70  最大應用程式控制堆大小(4KB)     (APP_CTL_HEAP_SZ) = 64  共享排序的排序堆域值(4KB) (SHEAPTHRES_SHR) = (SHEAPTHRES)  排序列表堆(4KB)                         (SORTHEAP) = 256  SQL 語句堆(4KB)                     (STMTHEAP) = 2048  預設應用程式堆(4KB)             (APPLHEAPSZ) = 256  程式包快取記憶體大小(4KB)                   (PCKCACHESZ) = (MAXAPPLS*8)  統計資訊堆大小(4KB)               (STAT_HEAP_SZ) = 4384  檢查死鎖的時間間隔(ms)         (DLCHKTIME) = 10000  每個應用程式的鎖定百分比列表       (MAXLOCKS) = 22  鎖定超時(秒)                        (LOCKTIMEOUT) = -1  更改的頁閾值               (CHNGPGS_THRESH) = 60  非同步頁清除程式的數目   (NUM_IOCLEANERS) = 1  I/O 伺服器的數目                   (NUM_IOSERVERS) = 3  索引排序標誌                             (INDEXSORT) = YES  順序檢測標誌                      (SEQDETECT) = YES  預設預取大小(頁)         (DFT_PREFETCH_SZ) = 16  跟蹤修改的頁數                         (TRACKMOD) = ON  容器的預設數目                            = 1  預設表空間資料塊大小(頁)   (DFT_EXTENT_SZ) = 32  活動應用程式的最大數目            (MAXAPPLS) = AUTOMATIC  活動應用程式的平均數目       (AVG_APPLS) = 1  每個應用程式的最大開啟 DB 檔案數            (MAXFILOP) = 64  日誌檔案大小(4KB)                         (LOGFILSIZ) = 250  主日誌檔案的數目                (LOGPRIMARY) = 3  輔助日誌檔案的數目               (LOGSECOND) = 2  已更改的至日誌檔案的路徑                   (NEWLOGPATH) =  日誌檔案路徑                     = E:/DB2/NODE0000/SQL00001/SQLOGDIR/  溢位日誌路徑                     (OVERFLOWLOGPATH) =  映象日誌路徑                         (MIRRORLOGPATH) =  第一活動日誌檔案                                        = S0000002.LOG  磁碟上已滿的塊日誌                (BLK_LOG_DSK_FUL) = NO  事務使用的最大活動日誌空間的百分比(MAX_LOG) = 0  1 個活動 UOW 的活動日誌檔案的數目 (NUM_LOG_SPAN) = 0  組落實計數                          (MINCOMMIT) = 1  軟檢查點前回收的日誌檔案的百分比 (SOFTMAX) = 100  啟用的恢復的日誌保留             (LOGRETAIN) = RECOVERY  啟用的記錄的使用者出口                (USEREXIT) = ON  啟用的自動重新啟動                      (AUTORESTART) = ON  索引重新建立時間                       (INDEXREC) = SYSTEM (ACCESS)  loadrec 會話的預設數目    (DFT_LOADREC_SES) = 1  要保留的資料庫備份的數目   (NUM_DB_BACKUPS) = 12  恢復歷史記錄保留(天數)     (REC_HIS_RETENTN) = 366  TSM 管理類                   (TSM_MGMTCLASS) =  TSM 節點名                            (TSM_NODENAME) =  TSM 所有者                                   (TSM_OWNER) =  TSM 密碼                             (TSM_PASSWORD) = 4.恢復完全備份。 E:/Program Files/IBM/SQLLIB/BIN>;db2 list history backup all for sample #檢視備份歷史記錄                     列示 sample 的歷史檔案 匹配的檔案條目數 = 6  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507173349001   F    D  S0000000.LOG S0000000.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE OFFLINE  開始時間:20030507173349    結束時間:20030507173410  ----------------------------------------------------------------------------   00001 位置:e:/db2/backup/SAMPLE.0/DB2/NODE0000/CATN0000/20030507  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507201421001   F    D  S0000000.LOG S0000000.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE OFFLINE  開始時間:20030507201421    結束時間:20030507201445  ----------------------------------------------------------------------------   00002 位置:e:/db2/backup/SAMPLE.0/DB2/NODE0000/CATN0000/20030507  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507202155001   N    D  S0000000.LOG S0000001.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE ONLINE  開始時間:20030507202155    結束時間:20030507202216  ----------------------------------------------------------------------------   00003 位置:E:/DB2/backonline/SAMPLE.0/DB2/NODE0000/CATN0000/20030507  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507202717001   N    D  S0000001.LOG S0000002.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE ONLINE  開始時間:20030507202717    結束時間:20030507202737  ----------------------------------------------------------------------------   00004 位置:e:/db2/backonline/SAMPLE.0/DB2/NODE0000/CATN0000/20030507  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507203403001   F    D  S0000002.LOG S0000002.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE OFFLINE  開始時間:20030507203403    結束時間:20030507203423  ----------------------------------------------------------------------------   00005 位置:e:/db2/backup/SAMPLE.0/DB2/NODE0000/CATN0000/20030507  Op 物件 時間戳記+序列     型別 裝置 最早日誌    當前日誌     備份標識  -- --- ------------------ ---- --- ------------ ------------ --------------   B  D  20030507203527001   N    D  S0000002.LOG S0000003.LOG  ----------------------------------------------------------------------------   包含 2 表空間:   00001 SYSCATSPACE   00002 USERSPACE1  ----------------------------------------------------------------------------     註釋:DB2 BACKUP SAMPLE ONLINE  開始時間:20030507203527    結束時間:20030507203548  ----------------------------------------------------------------------------   00006 位置:e:/db2/backonline/SAMPLE.0/DB2/NODE0000/CATN0000/20030507 E:/Program Files/IBM/SQLLIB/BIN>;db2 restore database sample from e:/db2/backonli ne taken at 20030507203527   #恢復某個時間點的資料。 SQL2539W  警告!正在復原至與備份映象資料庫相同的現有資料庫。資料庫檔案將被刪除。想要繼續嗎?(y/n) y DB20000I  RESTORE DATABASE 命令成功完成。 E:/Program Files/IBM/SQLLIB/BIN>;db2 rollforward database sample to end of logs and stop #回滾到日誌結束 5.恢復增量備份資料。 E:/Program Files/IBM/SQLLIB/BIN>;db2 connect to sample    資料庫連線資訊  資料庫伺服器         = DB2/NT 8.1.0  SQL 授權標識        = ADMINIST...  本地資料庫別名       = SAMPLE E:/Program Files/IBM/SQLLIB/BIN>;db2 list applications 授權標識  應用程式名    應用程式    應用程式標識                DB      代理程序                         控制代碼                                    名稱    序列號 -------- -------------- ---------- ------------------------------ -------- ----- ADMINIST>;db2bp.exe      17         *LOCAL.DB2.00D588005249        SAMPLE   1 E:/Program Files/IBM/SQLLIB/BIN>;db2 force application all DB20000I  FORCE APPLICATION 命令成功完成。 DB21024I  該命令為非同步的,可能不會立即生效。 E:/Program Files/IBM/SQLLIB/BIN>;db2 restore database sample incremental automatic from e:/db2/backonline taken at 20030507213106    #恢復增量備份。 SQL2539W  警告!正在復原至與備份映象資料庫相同的現有資料庫。資料庫檔案將被刪除。 想要繼續嗎?(y/n) y DB20000I  RESTORE DATABASE 命令成功完成。 E:/Program Files/IBM/SQLLIB/BIN>; E:/Program Files/IBM/SQLLIB/BIN>;db2 rollforward database sample to end of logs and stop #回滾到日誌結束。