本文將為您介紹DB2數據庫中避免目標數據庫中的配置文件不被映像文件中的所覆蓋的方法。 供您參考,希望對您有所幫助。
在將DB2 用BACKUP 命令方式創建的數據庫備份映像文件由RESTORE命令復原到一個不同名的目標數據庫中時,DB2 將把源數據庫中的配置文件復制到復原的目標數據庫中,從而覆蓋了該數據庫原有的各配置參數的設置。在此提供一種避免目標數據庫中的配置文件不被映像文件中的所覆蓋的方法。
一. 數據庫種子值的概念:
在介紹這一方法之前,首先要介紹一下數據庫種子值seed)的概念,它是數據庫的唯一標識,在數據庫的整個生命周期中,這個值都將始終保持不變。種子值是在數據庫創建時由數據庫管理器指定的,而在復原操作中,DB2 始終使用的是備份映像中的種子值。為獲取備份映像中的種子值,可通過 DB2ckbkp 命令從輸出中查詢。
將一個DB2 數據庫的全備份映像復原到一個已存在的數據庫中時,兩個數據庫的別名,數據庫名,及種子值都可能不相同,復原實用程序將對該數據庫進行一系列的操作,其中包括的一項操作就是比較源和目標數據庫的兩個種子值,如果種子值不同,則將備份映像中的數據庫配置文件復制到目標數據庫中,以覆蓋其原有的各配置參數;如果兩個值相同,則保留目標數據庫中的配置文件。
二. 結合實例說明實現的步驟:
下面我們舉例說明避免復原DB2 數據庫備份映像至不同名數據庫時,目標數據庫的配置文件被映像中的所覆蓋的方法,這裡源數據庫名SAMPLE,目標數據庫名為TEST,以對數據庫參數UTIL_HEAP_SZ 的修改來舉例:
·源數據庫種子值的獲取:
1. 查看源數據庫中 UTIL_HEAP_SZ 的值:
DB2 get db cfg for sample |find /i "util_"
實用程序堆大小4KB) (UTIL_HEAP_SZ) = 5000
2. 脫機全備份源數據庫: