【摘 要】本文將高對可用需求進行分解和分析,然后給出滿足這些需求的高可用總體解決方案,最后將討論總體解決方案的應用和實現。由于國內電信企業(yè)業(yè)務支撐系統(tǒng)對Oracle數據庫高的可用需求具有共性,所以本文的討論和研究的解決方案對其他電信企業(yè)具有很好的借鑒作用。
【關鍵詞】Oracle;數據庫;高可用;業(yè)務支撐系統(tǒng)
1.高可用需求的分解和分析
一級業(yè)務支撐系統(tǒng)對Oracle數據庫高的可用需求可以分為兩大類:第一類是防止數據庫計劃外停機;第二類是將計劃內數據庫停機時間降至最少。
下面將對產生停機的原因進行逐條分析,并討論每項需求對應哪種Oracle高可用技術解決庫方案。
1.1防止數據庫計劃外停機
1.1.1服務器故障
當Oracle數據庫所在某臺主機出現故障,不可訪問時,如果數據庫做了真正應用集群(RAC),這時應用程序可以通過其他節(jié)點訪問數據庫,實行服務的透明切換。
1.1.2存儲故障
自動存儲管理(ASM)是Oracle關于數據存儲的高可用解決方案,它提供了數據冗余和優(yōu)化,當某塊磁盤存儲出現故障時同一故障組的其他磁盤會利用冗余數據提供,保證數據不丟失,服務不中斷。
1.1.3數據庫和站點故障
數據庫所有節(jié)點出現故障或損壞時,Oracle數據庫可以利用數據衛(wèi)士(DG)技術提供的備用數據庫,應用程序可以快速將數據庫的訪問指向備用數據庫,以保證可以繼續(xù)提供服務。
1.1.4數據損壞
當數據出現損壞無法修復時,也可以利用數據衛(wèi)士(DG)技術啟用備用數據庫。
1.2減少數據庫計劃內停機時間
1.2.1操作系統(tǒng)和硬件維護、添加/移除集群節(jié)點或存儲設備
當操作系統(tǒng)和主機維護時,可以利用真正應用集群(RAC)的解決方案,應用程序可以通過其他節(jié)點訪問數據庫,實行服務的透明切換。
當存儲維護時,如增加或減少磁盤時利用自動存儲管理(ASM)提供的存儲解決方案,進行存儲的自動重組,并實現I/O均衡。
1.2.2 Oracle一次性補丁、重要補丁更新、文件系統(tǒng)和集群件升級
可以利用Oracle真正應用集群(RAC)和自動存儲管理(ASM)技術應對在打Oracle一般補丁、重要補丁,及文件系統(tǒng)和集群件升級等維護操作。
1.2.3站點維護、集群范圍維護
當進行例行的站點停機維護或整個集群停機維護時,可以利用數據衛(wèi)士(DG)技術提供的備用數據庫,應用程序可以快速將數據庫的訪問指向備用數據庫,以保證可以繼續(xù)提供服務,等待維護完成后可以再切回原來的主用數據。
2.高可用總體解決方案
經過對數據庫高可用需求和高可用解決進行進一步的整理。
將這些可高用方案有機組合成來,就形成了一個總體的應對一級業(yè)務支撐系統(tǒng)高可用整體解決庫方案。即:
(1)數據庫主機采用HP高端小型機rx8640。
(2)存儲采用HP的高端盤陣xp24000。
(3)數據庫庫采用目前比較成熟的Oracle 10gR2版本,數據文件用自動存儲管理(ASM),打開閃回(Flashback),采用兩節(jié)點集群(RAC),并用數據衛(wèi)士(DG)建立備庫。
以上用到的硬件設備都是利舊的原有設備,所以不需要考慮硬件成本問題。
3.高可用方案的實現
3.1真正應用集群(RAC)和自動存儲管理(ASM)的應用和實現
本方案是用兩個節(jié)點做數據庫集群(RAC),數據文件是存放在磁盤陣列上,用自動存儲管理(ASM)的方式管理。本步的應用和實現,其實就是安裝并建立數據庫的過程,具體的執(zhí)行步驟是:
3.1.1安裝前先做一些準備工作
包括:安裝最新的hp-ux 11.31,按照oracle的要求打hp-ux補丁,調整hp-ux內核參數,連接并分配存儲,安裝網卡并配置ip等。
3.1.2執(zhí)行安裝前的檢查,確保具體安裝條件
包括:安裝集群(RAC)數據庫,自動存儲管理(ASM)管理數據存儲。包括:檢查物理內存大小是否合適,查看交換空間大小是否合適,檢查磁盤空間大小是否合適,檢查存儲是否啟動異步io,檢查網卡是否工作正常,檢查hp-ux的補丁是否打齊,檢查內核參數是否正確,添加dba組和oracle用戶,檢查建立雙機節(jié)點間的信任關系等。
3.1.3安裝集群件ClusterWare軟件
在安裝過程中要注意,要將集群件安裝在兩個節(jié)點上,并且綁定ip。
3.1.4安裝Oracle數據庫軟件
3.1.5創(chuàng)建數據庫
在創(chuàng)建數據庫時注意選擇正確的字符集,在本項目中使用zhs16gbk字符集。在創(chuàng)建數據庫的過程中選擇自動存儲管理(ASM)管理,這樣數據文件建在ASM中,由ASM管理了。
3.2數據衛(wèi)士(DG)的應用和實現
在建立數據衛(wèi)士(DG)的實現方式時有幾個問題需要討論:
3.2.1物理備庫和邏輯備庫的選擇
數據衛(wèi)士做備庫時有物理方式和邏輯方式兩種選擇,因為邏輯方式有效率比物理方式低,對BFILE,XMLTYPE等字段類型不支持,又因為在主庫根據ROWID定位的記錄,在備中不一定能定位到同一條記錄,因此選擇使用物理備庫。
3.2.2數據庫的保護模式選擇
選擇最大可用工作模式,即:主庫不受備庫的牽制和影響,當備庫宕機,不會影響到主庫宕機,數據保護模式臨時會切換到最大性能模式,直到備庫修復,重新建立和主庫的同步。
3.3數據衛(wèi)士的實施步驟為
(1)修改主庫的參數,使得主庫可以向備庫傳送同步日志。
(2)將主庫上的數據用RMAN備份出來,并復制到備庫主機上。
(3)在備份主機上建立備份庫,并能接收和應用從主庫傳來的同步數據。
(4)最后檢查相關日志和告警,確認數據衛(wèi)士(DG)能正常工作。
通過以上幾個步驟,實現了一級業(yè)務支撐系統(tǒng)總體解決方案。
【參考文獻】
[1]西爾伯沙茨.數據庫系統(tǒng)概念[M].北京:機械工業(yè)出版社,2006.
[2]陳吉平.構建Oracle高可用環(huán)境[M].北京:電子工業(yè)出版社,2008.
[3]劉讓國.基于海量空間數據庫的高可用性研究與應用[J].計算機工程, 2008,34(6):263-265.