文章詳情頁(yè)
如何把 DB2 V8 數(shù)據(jù)庫(kù)系統(tǒng)遷移到 DB2 V9(1)
瀏覽:5日期:2023-11-11 12:19:54
在已經(jīng)安裝了 DB2 V8 的平臺(tái)上要安裝 DB2 9,可以將現(xiàn)有的數(shù)據(jù)庫(kù)系統(tǒng)升級(jí)到DB2 9。升級(jí) DB2 數(shù)據(jù)庫(kù)需要對(duì)系統(tǒng)有深刻的理解。本文具體描述了如何在 Windows 平臺(tái)上把 DB2 V8 數(shù)據(jù)庫(kù)系統(tǒng)升級(jí)到 DB2 9。文章中包含了如何移植實(shí)例(Instance),DB2 治理服務(wù)器(DAS)和數(shù)據(jù)庫(kù)的詳盡方法,以及常見(jiàn)的錯(cuò)誤和解決方法。簡(jiǎn)介在安裝好 DB2 舊版本的系統(tǒng)上安裝 DB2 v9,需要把舊版本的所有的實(shí)例(Instance)和數(shù)據(jù)庫(kù)系統(tǒng)遷移到 DB2 V9, 移植 DB2 V8 數(shù)據(jù)庫(kù)系統(tǒng),包括遷移實(shí)例(Instance),DB2 治理服務(wù)器(DAS)和數(shù)據(jù)庫(kù)。對(duì)于 DB2 V8 的數(shù)據(jù)庫(kù)系統(tǒng),可以直接遷移到 DB2 V9。對(duì)于 DB2 V6、V7 的產(chǎn)品需要首先遷移到 DB2 V8,然后再遷移到 DB2 V9。在一臺(tái) Windows 系統(tǒng)的系統(tǒng)上,我們已經(jīng)安裝了 DB2 ESE(Enterprise Server Edition) V8.2 數(shù)據(jù)庫(kù)系統(tǒng)。假定我們創(chuàng)建了一個(gè) DB2 的實(shí)例。同時(shí),我們?cè)谠搶?shí)例下創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù) Sample。我們需要在該系統(tǒng)上安裝 DB2 V9,把 DB2 ESE V8.2 移植到 DB2 V9。數(shù)據(jù)庫(kù)治理員賬號(hào)為 db2admin,同時(shí)也具有系統(tǒng)治理員的權(quán)限。下面在上述的 Windows 平臺(tái)上,開(kāi)始我們的移植 DB2 ESE V8.2旅程。遷移數(shù)據(jù)庫(kù)實(shí)例有兩種方式可以遷移數(shù)據(jù)庫(kù)實(shí)例。一種是由數(shù)據(jù)庫(kù)安裝程序?qū)崿F(xiàn)自動(dòng)遷移,第二種方式是手工遷移數(shù)據(jù)庫(kù)。在 Windows 平臺(tái)上,可以在安裝 DB2 V9 過(guò)程中選擇從 DB2 V8 移植到 DB2 V9。安裝結(jié)束后 DB2 V8 的實(shí)例就自動(dòng)移植到 DB2 V9。1. 自動(dòng)遷移實(shí)例以系統(tǒng)治理員身份登錄系統(tǒng),如 db2admin;運(yùn)行 DB2 V9 的安裝程序 setup.exe;在圖 1 所示的“安裝產(chǎn)品的面板上選擇“遷移舊的數(shù)據(jù)庫(kù)系統(tǒng); 123下一頁(yè) 圖 1. DB2 安裝界面
在選擇安裝文件夾的面板上,我們可以看到安裝路徑被自動(dòng)設(shè)為 DB2 ESE V8.2 的安裝路徑“c:Program FilesIBMSQLLIB。我們不需要也不能選擇安裝文件夾。待安裝結(jié)束后,該目錄下原來(lái)安裝的 DB2 將被升級(jí);在遷移過(guò)程結(jié)束后可以運(yùn)行 db2level 命令來(lái)驗(yàn)證數(shù)據(jù)庫(kù)實(shí)例是否被成功的遷移。圖 2 是執(zhí)行 db2level 命令的結(jié)果。我們可以看到原來(lái)的數(shù)據(jù)庫(kù)實(shí)例 DB2 已經(jīng)被成功的遷移,其版本信息為“DB2 v9.1.0.356;圖 2. 驗(yàn)證遷移后的DB2 版本信息運(yùn)行 DB2 Control Center,當(dāng)訪問(wèn)原來(lái)的數(shù)據(jù)庫(kù) Sample 時(shí),會(huì)彈出一個(gè)錯(cuò)誤信息的對(duì)話框。提示該數(shù)據(jù)庫(kù)是被一個(gè)低版本的數(shù)據(jù)庫(kù)創(chuàng)建。因此必須把數(shù)據(jù)庫(kù)進(jìn)行遷移。如圖 3 所示。下一節(jié)將講述如何遷移數(shù)據(jù)庫(kù)。圖 3. 在遷移數(shù)據(jù)庫(kù)之前訪問(wèn)數(shù)據(jù)庫(kù)出錯(cuò)2. 手工遷移實(shí)例假如在安裝過(guò)程中沒(méi)有選擇“遷移數(shù)據(jù)庫(kù)的話,我們可以在安裝結(jié)束后手工遷移實(shí)例。停止運(yùn)行的 DB2 實(shí)例,db2stop;遷移 DB2 實(shí)例,我們可以執(zhí)行下面的命令。$DB2DIRindb2imigr /u:user,password InstName。其中 $DB2DIR 是 DB2 安裝路徑。user、password 是數(shù)據(jù)庫(kù)服務(wù)下的用戶名和密碼。InstName 是數(shù)據(jù)庫(kù)實(shí)例的名字。對(duì)于我們的例子,我們可以使用下面的命令 C:Program FilesIBMdweSQLLIBindb2imigr /u:db2admin,passw0rd DB2。 上一頁(yè)123下一頁(yè) 遷移完數(shù)據(jù)庫(kù)實(shí)例后,重新啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例 DB2。db2start。遷移數(shù)據(jù)庫(kù)完成上面的遷移 DB2 實(shí)例后,我們需要繼續(xù)遷移該實(shí)例下的數(shù)據(jù)庫(kù)。假設(shè)原來(lái)在該實(shí)例下,有個(gè) Sample 數(shù)據(jù)庫(kù)。用具有 SYSADM 權(quán)限的該實(shí)例的用戶登錄系統(tǒng),如 db2admin;運(yùn)行 db2 命令行工具,在該環(huán)境中執(zhí)行遷移數(shù)據(jù)庫(kù)的命令:MIGRATE DATABASE database-alias USER username USING password。其中 database-alias 是將要遷移的數(shù)據(jù)庫(kù)的名字或者別名。Username 是具有 SYSADM 權(quán)限的用戶名來(lái)認(rèn)證。在我們的例子中,假設(shè) db2admin 的密碼是 passw0rd.那么我們需要執(zhí)行下面的命令來(lái)遷移 sample 數(shù)據(jù)庫(kù):MIGRATE DATABASE sample USER db2adim USING passw0rd。為驗(yàn)證我們的數(shù)據(jù)庫(kù)被成功遷移到 DB2 V9,我們可以連接到數(shù)據(jù)庫(kù) sample,并查詢其中的數(shù)據(jù)。我們?cè)囼?yàn)的結(jié)果如圖 4 所示。現(xiàn)在我們能夠成功的連接到數(shù)據(jù)庫(kù) sample,并能夠查詢到其中的數(shù)據(jù)。圖 4. 訪問(wèn)遷移后的數(shù)據(jù)庫(kù)遷移 DB2 治理服務(wù)器在遷移 DB2 數(shù)據(jù)庫(kù)系統(tǒng)中,我們也可以遷移原來(lái)的 DAS,或者先刪掉原來(lái)的 DAS,再創(chuàng)建新的 DAS。在安裝 DB2 服務(wù)器上,你只可以有一個(gè) DAS。下面是遷移 DAS 的具體步驟。用 DAS 治理員的賬號(hào)登錄,如 db2admin;停止 DAS 服務(wù)器。我們可以用下面的命令:db2admin stop。遷移原來(lái)的 DB2 V8 的 DAS 服務(wù)器,假設(shè)我們的 DB2 安裝在 C:Program FilesIBMSQLLIB 目錄下。我們運(yùn)行下面的命令:<db2dir>indasmigr,即 C:Program FilesIBMSQLLIBindasmigr。為驗(yàn)證我們的 DAS 是不是已經(jīng)被成功的遷移到 DB2 V9,我們可以運(yùn)行 db2daslevel 命令。圖 5 是運(yùn)行后的顯示結(jié)果。圖 5. 執(zhí)行 db2daslevel遷移 DAS 完成后,我們可以重新啟動(dòng) DAS 服務(wù)器:db2admin start。常見(jiàn)錯(cuò)誤及解決遷移過(guò)程中最常見(jiàn)的錯(cuò)誤是日志文件(log)文件不夠大。其錯(cuò)誤消息如清單 1 所示。清單 1. 日志錯(cuò)誤消息SQL1704N Database migration failed. Reason code "3".解決方法如下:連接到想要遷移的數(shù)據(jù)庫(kù):CONNECT TO sample;使用 GET DATABASE CONFIGURATION 命令來(lái)決定目前日志文件空間大小。例如清單 2 中的設(shè)置:清單 2. 日志文件空間大小設(shè)置日志文件大小(4KB) (LOGFILSIZ) = 1024主日志文件的數(shù)目 (LOGPRIMARY) = 13輔助日志文件的數(shù)目 (LOGSECOND) = 4日志文件路徑= C:DB2NODE0000SQL00004SQLOGDIR可以使用下面的命令來(lái)提高日志空間大小:UPDATE DB CFG FOR sample using current value * 2。例如,UPDATE DB CFG FOR sample using LOGPRIMARY 26,UPDATE DB CFG FOR sample using LOGSECOND 8。另外一個(gè)常見(jiàn)的警告信息是 SQL1243W。碰到這種錯(cuò)誤,你必須卸載或者重新命名 SYSTOOLS.DB2LOOK_INFO 表。可以使用下面的命令:db2 RENAME SYSTOOLS.DB2LOOK_INFO TO new-table-name。 上一頁(yè)123

標(biāo)簽:
DB2
數(shù)據(jù)庫(kù)
排行榜
