徐嘉語
(中移鐵通有限公司吉林分公司,吉林 長春 130012)
informix由32位升級到64位的準(zhǔn)備工作
徐嘉語
(中移鐵通有限公司吉林分公司,吉林 長春 130012)
informix-online作為中移鐵通公司吉林分公司計費系統(tǒng)的數(shù)據(jù)庫,保持數(shù)據(jù)庫運行性能良好,是DBA的主要職責(zé)。當(dāng)informix需要升級時,準(zhǔn)備工作是最重要的。以下為筆者在informix由32位升級到64位的過程中總結(jié)的數(shù)據(jù)庫檢查、數(shù)據(jù)庫備份、系統(tǒng)備份、操作系統(tǒng)打patch、系統(tǒng)備份5項準(zhǔn)備工作。
數(shù)據(jù)庫檢查;數(shù)據(jù)庫備份;系統(tǒng)備份;系統(tǒng)打patch
安裝的過程中,往/tmp目錄下寫一些文件,需確保/tmp下的空間不要太?。?00M)。
確認root dbspace有空間可供升級,若不夠,則刪除那些不需要的對象,Root chunk要求至少有10%的剩余空間。
可以通過運行ckconvsp.sh來確認空間是否夠用。正常將顯示下面的信息:
It is safe to go ahead with the conversion.
確認$INFORMIXDIR目錄下有足夠的空間升級(需要200 M左右的剩余空間),刪除不需要的文件。
使用下面的SQL語句確認每個dbspace需要的剩余空間,否則增加chunk或把表移到別的表空間上或刪除表。
返回值以頁為單位。
確認邏輯日志至少有6 000k的空間,若不足,備份邏輯日志。
升級前一天用oncheck命令對主機(以set1為例)上原數(shù)據(jù)庫的系統(tǒng)數(shù)據(jù)和用戶數(shù)據(jù)進行檢查,包括:
①執(zhí)行nohup$oncheck–cr>重定向輸出文件名 &,檢查數(shù)據(jù)庫保留頁。舉例如下:
nohup$oncheck–cr>cr&
②執(zhí)行nohup$oncheck–ce>重定向輸出文件名 &,檢查數(shù)據(jù)庫extend。舉例如下:
nohup$oncheck–ce>ce&
③執(zhí)行nohup$oncheck–cc數(shù)據(jù)庫名稱 >重定向輸出文件名 &,檢查所有數(shù)據(jù)庫(包括系統(tǒng)數(shù)據(jù)庫)的系統(tǒng)表。舉例如下:
其中,free_space_req是以“k”為單位的。
下面的SQL語句可以查出每個dbspace上的剩余空間:SELECT dbsnum dbspace_num,sum(nfree)free_space_avail FROM syschunks GROUP BY 1 ORDER BY 1;
④執(zhí)行nohup$oncheck–cD數(shù)據(jù)庫名稱 >重定向輸出文件名 &,檢查所有數(shù)據(jù)庫(包括系統(tǒng)數(shù)據(jù)庫)的數(shù)據(jù)。舉例如下:
⑤執(zhí)行nohup$oncheck–cI數(shù)據(jù)庫名稱 >重定向輸出文件名 &,檢查所有數(shù)據(jù)庫(包括系統(tǒng)數(shù)據(jù)庫)的索引。舉例如下:
檢查oncheck各輸出文件,確保各項檢查沒有錯誤信息(Error)后方可進行下面的步驟。
注1:上述oncheck的輸出結(jié)果可能會檢查Index會報“sqopendb()”錯,應(yīng)將informix用戶的環(huán)境變量DB_LOCALE和CLIENT_LOCALE設(shè)置成zh_cn.gb,重新檢查數(shù)據(jù)庫的索引。
注2:oncheck操作影響數(shù)據(jù)庫性能,建議在升級前晚上進行。
第一步,執(zhí)行onbar–b–w–L 0,對數(shù)據(jù)庫進行全系統(tǒng)備份。在執(zhí)行前將準(zhǔn)備好的400 G磁帶放進帶庫,成功備份后,將介質(zhì)取出,放入防磁柜。
第二步,將數(shù)據(jù)庫的安裝目錄進行復(fù)制,進入$INFORMIXDIR指定的目錄,即進入到/informix下,然后執(zhí)行tar–cvf/存放tar文件目錄/informix.tar/informix.
注意:執(zhí)行該tar命令會占用雙倍的informix目錄空間,請在執(zhí)行前注意檢查空間是否充足。
系統(tǒng)備份有2種方式。采用make_recovery進行備份可以從磁帶上引導(dǎo)恢復(fù)。
對系統(tǒng)全備份 #tar cvf /dev/rmt/0m /
恢復(fù)數(shù)據(jù) # tar xvf /dev/rmt/0m(磁帶上所有數(shù)據(jù))
查看磁帶上的數(shù)據(jù) #tar tvf /dev/rmt/0m
3.2.1 #make_recovery–A–v
#make_recovery–A–v,用于系統(tǒng)級備份。
-A:指定要備份整個Root disk/Volume Group.
-v:用于顯示備份過程的提示信息。
3.2.2 交互式恢復(fù)系統(tǒng)
如果informix升級需要操作系統(tǒng)打patch,先在/var/adm/sw/products下確認是否有,否則上HP官方網(wǎng)站下載patch,進行如下操作。
由于系統(tǒng)打了patch,需要重新再做一遍系統(tǒng)全備份,主要目的是保證最新的系統(tǒng),以防升級失敗時恢復(fù)系統(tǒng)。
綜上所述,升級前的準(zhǔn)備工作非常關(guān)鍵,成功地做好這5項準(zhǔn)備工作后,方可以根據(jù)IBM工程師提供的64位升級軟件來升級informix。如果升級失敗,可用數(shù)據(jù)庫備份和系統(tǒng)備份恢復(fù)系統(tǒng),不必關(guān)心系統(tǒng)會出現(xiàn)癱瘓的可能。
F626
A
10.15913/j.cnki.kjycx.2018.01.043
2095-6835(2018)01-0043-02
徐嘉語(1973—),女,畢業(yè)于吉林大學(xué)通信工程專業(yè),學(xué)士學(xué)位,網(wǎng)絡(luò)工程師,研究方向為計費管理網(wǎng)的安全、穩(wěn)定運行。
〔編輯:劉曉芳〕