国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據(jù)庫系統(tǒng)切換方法

      文檔序號(hào):7973784閱讀:188來源:國知局

      專利名稱::一種數(shù)據(jù)庫系統(tǒng)切換方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及數(shù)據(jù)庫^a術(shù),具體涉及一種數(shù)據(jù)庫系統(tǒng)切換方法。技術(shù)背景廣義的數(shù)據(jù)庫系統(tǒng)冗災(zāi)指的是減小自然、戰(zhàn)爭(zhēng)等不可抗力造成的數(shù)據(jù)丟失;狹義的數(shù)據(jù)庫系統(tǒng)冗突,包括因?yàn)檎`搡作、硬件損壞、業(yè)務(wù)高峰、斷電等對(duì)數(shù)據(jù)庫系統(tǒng)造成的沖擊等帶來的數(shù)據(jù)庫系統(tǒng)癱瘓,這在數(shù)據(jù)庫系統(tǒng)存在BUG的情況下,更為常見,這種情況比較頻繁,而且對(duì)業(yè)務(wù)的正常運(yùn)行帶來了不可估量的損失。按業(yè)務(wù)是否中斷,又分為數(shù)據(jù)級(jí)冗災(zāi)和應(yīng)用級(jí)冗災(zāi)①。應(yīng)用級(jí)指的是系統(tǒng)自動(dòng)完成災(zāi)備切換,最大減小切換時(shí)間,使應(yīng)用不間斷的運(yùn)行;數(shù)據(jù)冗災(zāi)則不可避免的會(huì)中斷業(yè)務(wù),在數(shù)據(jù)恢復(fù)到數(shù)據(jù)庫系統(tǒng)這段時(shí)間內(nèi),數(shù)據(jù)庫系統(tǒng)是不能工作的,最常見的就是絕大多數(shù)商用關(guān)系數(shù)據(jù)庫提供的備份恢復(fù),在恢復(fù)之前,數(shù)據(jù)庫是不可用的。冗災(zāi)數(shù)據(jù)庫系統(tǒng)一般由兩部份構(gòu)成,一是數(shù)據(jù)庫系統(tǒng)切換,二是數(shù)據(jù)復(fù)制。IBM的應(yīng)用級(jí)突備主要采用基于AIX平臺(tái)的HighAvailabilityGeographicalCluster/HighAvailabilityClusterMulti-Processing,簡(jiǎn)稱HAGEO/HACMP方案或基于S/390的GeographicallyDispersedParallelSysplex,簡(jiǎn)稱GDPS方案,而數(shù)據(jù)級(jí)的方案采用基于磁盤系統(tǒng)的PeerToPeerRemoteCopy或ExtendRemoteCopy,筒稱PPRC或XRC功能軟件②。Veritas的系統(tǒng)切換策略則可由用戶定制,并在GlobalClusterManager/VeritasClusterServer,簡(jiǎn)稱GCM/VCS軟件中實(shí)現(xiàn),數(shù)據(jù)復(fù)制則采用VolumeReplicator,簡(jiǎn)稱VVR將邏輯巻復(fù)制到多個(gè)備份節(jié)點(diǎn)上③。數(shù)據(jù)復(fù)制,一般來說可以在硬件或軟件層上實(shí)現(xiàn),如,磁盤硬件存儲(chǔ)級(jí),文件系統(tǒng)級(jí),操作系統(tǒng)級(jí),數(shù)據(jù)庫級(jí),SNA網(wǎng)絡(luò)級(jí)等。目前的冗災(zāi)方案大多還是針對(duì)數(shù)據(jù)級(jí)的冗災(zāi),例如,IBM的PPRC/XRC功能軟件,它是通過光纖通道,以邏輯巻為單位,將本地?cái)?shù)據(jù)同步鏡像到遠(yuǎn)端,可以有同步和異步方式,區(qū)別在于主機(jī)是否收到備機(jī)寫完成信號(hào)后才確認(rèn)數(shù)據(jù)寫成功。針對(duì)業(yè)務(wù)不間斷的應(yīng)用級(jí)冗災(zāi)并不多見,成熟的產(chǎn)品,如IBM的HAGEO/HACMP(HACMP的規(guī)則同樣適用于HAGEO,兩者支持的距離有所區(qū)別④)集群技術(shù),其數(shù)據(jù)復(fù)制方式有三種同步,鏡像同步和異步,同步過程基本是一個(gè)線性過程,先寫遠(yuǎn)端再寫本地,等主備寫完了,才宣告寫完成,鏡像同步采用了一個(gè)狀態(tài)圖的設(shè)備,先寫狀態(tài)圖,再寫本地盤,本地寫完即宣告寫完成,由后臺(tái)負(fù)責(zé)遠(yuǎn)端寫,直到遠(yuǎn)端和本地?cái)?shù)據(jù)完全一致,異步的方式是允許主備之間一定數(shù)據(jù)差異,當(dāng)達(dá)到差異值之后轉(zhuǎn)換為鏡像同步,以提高性能。HAGEO/HACMP切換過程是利用lan來監(jiān)控主機(jī)、網(wǎng)絡(luò)和網(wǎng)卡的狀態(tài),該環(huán)境由兩套網(wǎng)絡(luò)構(gòu)成,一是客戶端訪問的公共網(wǎng),即TCP/IP網(wǎng)絡(luò),一是替代TCP/IP的通訊路徑,可以是RS232串口等,即非TCP/IP網(wǎng)絡(luò),它實(shí)際上是一個(gè)'心跳,線,專門用來監(jiān)測(cè)缺省的三類故障網(wǎng)卡故障、網(wǎng)絡(luò)故障、節(jié)點(diǎn)故障。主備節(jié)點(diǎn)一旦加入該集群,節(jié)點(diǎn)的各個(gè)網(wǎng)卡、非TCP/IP網(wǎng)絡(luò)會(huì)不斷的發(fā)送接收K一A(Keep_Alive)信號(hào),如果備機(jī)接收的TCP/IP網(wǎng)絡(luò)和非TCP/IP網(wǎng)絡(luò)上的K—A信號(hào)都丟失,那么HACMP可以斷定為節(jié)點(diǎn)故障;如果備機(jī)接收的TCP/IP網(wǎng)絡(luò)上K一A信號(hào)丟失,而TCP/IP網(wǎng)絡(luò)上的K一A信號(hào)存在,那么HACMP可以斷定為網(wǎng)絡(luò)故障;如果某一網(wǎng)卡的K^A信號(hào)全部丟失,則HACMP可以斷定為網(wǎng)卡故障,默認(rèn)情況下,HACMP只判斷這三種情況,其它故障可以結(jié)合AIX基本功能和HACMP提供的一些機(jī)制,如ErrorNotificationFacility,clinfoAPI等對(duì)故障進(jìn)行監(jiān)控并采取切換等恢復(fù)措施。ORACLEDataGuard則提供了數(shù)據(jù)庫層次上的一個(gè)突備方案,它是將主機(jī)的redo日志拷貝到備機(jī)上,同時(shí)恢復(fù)日志,以達(dá)到主備機(jī)數(shù)據(jù)一致,但某個(gè)節(jié)點(diǎn)發(fā)生事故需要主備切換,仍然需要人工參與,ORACLERAC允許N節(jié)點(diǎn)備份,但節(jié)點(diǎn)之間仍然通過交換方式鏈接,發(fā)生切換仍然需要clustermanager模塊進(jìn)行心跳監(jiān)控⑤,而不是利用業(yè)務(wù)過程中產(chǎn)生的信息來進(jìn)行判斷。
      發(fā)明內(nèi)容本發(fā)明需要解決的技術(shù)問題是提供一種數(shù)據(jù)庫切換方法,能夠利用業(yè)務(wù)信息進(jìn)行切換。本發(fā)明的上述技術(shù)問題這樣解決,提供一種數(shù)據(jù)庫切換方法,使用數(shù)據(jù)庫操作數(shù)據(jù)包在多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行備份,包括以下步驟1.1)將原始相同的數(shù)據(jù)庫在數(shù)據(jù)庫系統(tǒng)局域網(wǎng)內(nèi)的多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)中獨(dú)立保存;1.2)將該局域網(wǎng)通過網(wǎng)關(guān)/路由器與發(fā)送數(shù)據(jù)庫操作數(shù)據(jù)包的業(yè)務(wù)處理系統(tǒng)連接;1.3)各網(wǎng)絡(luò)節(jié)點(diǎn)通過同時(shí)偵聽在數(shù)據(jù)庫系統(tǒng)局域網(wǎng)內(nèi)廣播的數(shù)據(jù)庫搡作數(shù)據(jù)包對(duì)各自數(shù)據(jù)庫實(shí)例進(jìn)行相同數(shù)據(jù)庫搡作。按照本發(fā)明提供的切換方法,所迷數(shù)據(jù)庫操作是讀操作,所述步驟1.3)中僅一網(wǎng)絡(luò)節(jié)點(diǎn)返回讀操作的業(yè)務(wù)數(shù)據(jù)示給發(fā)出數(shù)據(jù)庫搡作數(shù)據(jù)包的業(yè)務(wù)處理系統(tǒng)。按照本發(fā)明提供的切換方法,所述數(shù)據(jù)庫操作是寫操作;所述步驟1.3)中僅一網(wǎng)絡(luò)節(jié)點(diǎn)返回寫搡作的成功/失敗標(biāo)示給發(fā)出數(shù)據(jù)庫搡作數(shù)據(jù)包的業(yè)務(wù)處理系統(tǒng)。按照本發(fā)明提供的切換方法,所述一網(wǎng)絡(luò)節(jié)點(diǎn)為主用機(jī),其他網(wǎng)絡(luò)節(jié)點(diǎn)為備用才幾。按照本發(fā)明提供的切換方法,所述備用機(jī)是一個(gè)或多個(gè)。按照本發(fā)明提供的切換方法,所述數(shù)據(jù)庫系統(tǒng)由所述網(wǎng)絡(luò)節(jié)點(diǎn)構(gòu)成,所述數(shù)據(jù)庫系統(tǒng)局域網(wǎng)僅由所述網(wǎng)絡(luò)節(jié)點(diǎn)和網(wǎng)絡(luò)連接構(gòu)成。按照本發(fā)明提供的切換方法,所述網(wǎng)絡(luò)連接是總線方式。按照本發(fā)明提供的切換方法,所述網(wǎng)絡(luò)節(jié)點(diǎn)的網(wǎng)卡設(shè)為Promiscuous模式。本發(fā)明提供的數(shù)據(jù)庫系統(tǒng)切換方法,利用以太網(wǎng)廣播特點(diǎn)在多網(wǎng)絡(luò)節(jié)點(diǎn)進(jìn)行數(shù)據(jù)備份,進(jìn)一步利用消息確認(rèn)機(jī)制和切換計(jì)時(shí)器來進(jìn)行數(shù)據(jù)庫系統(tǒng)主備機(jī)切換,數(shù)據(jù)庫系統(tǒng)構(gòu)造筒單,且能在一個(gè)確定的數(shù)據(jù)操作周期的時(shí)間中完成主備切換,達(dá)到多機(jī)實(shí)時(shí)熱備份的效果,特別能夠解決移動(dòng)通信HLR網(wǎng)元中,數(shù)據(jù)庫系統(tǒng)常常因?yàn)樗矓嗷蛞恍┏绦蛑袛嗟犬惓6鸬臉I(yè)務(wù)癱瘓,盡可能減小因?yàn)閿?shù)據(jù)庫異常帶來的系統(tǒng)不穩(wěn)定性。下面結(jié)合附圖和具體實(shí)施例進(jìn)一步對(duì)本發(fā)明進(jìn)行詳細(xì)說明。圖l是本發(fā)明冗災(zāi)備份和切換方法實(shí)現(xiàn)的系統(tǒng)結(jié)構(gòu)示意圖。圖2是本發(fā)明數(shù)據(jù)備份方法邏輯流程示意圖。圖3是本發(fā)明主備切換方法邏輯流程示意圖。具體實(shí)施方式首先,說明本發(fā)明的關(guān)鍵在讀/寫數(shù)據(jù)操作過程中,利用數(shù)據(jù)包在以太網(wǎng)中進(jìn)行廣播的特點(diǎn)進(jìn)行備份數(shù)據(jù),并且把數(shù)據(jù)庫系統(tǒng)的失效時(shí)間通過切換定時(shí)器等機(jī)制限定在一個(gè)確定的時(shí)間范圍內(nèi)。第二步,說明本發(fā)明應(yīng)用總體網(wǎng)絡(luò)環(huán)境,具體如圖l所示,包括①業(yè)務(wù)處理(應(yīng)用)系統(tǒng)40,②路由器50以及③由主用機(jī)10和備用機(jī)20組成的數(shù)據(jù)庫局域網(wǎng)系統(tǒng)30,具體如下①業(yè)務(wù)處理(應(yīng)用)系統(tǒng)40,它產(chǎn)生對(duì)數(shù)據(jù)庫系統(tǒng)的讀/寫操作;②路由器50,位于業(yè)務(wù)處理系統(tǒng)和數(shù)據(jù)庫局域網(wǎng)系統(tǒng)之間,也可以是交換機(jī)或者HUB集線器;③數(shù)據(jù)庫局域網(wǎng)系統(tǒng)30,是構(gòu)成后臺(tái)整個(gè)數(shù)據(jù)庫系統(tǒng)的"共享式,,局域網(wǎng),其實(shí)質(zhì)是一個(gè)載波檢測(cè)多路偵聽機(jī)制控制傳輸?shù)墓蚕硇诺溃饔脵C(jī)10和備用機(jī)20之間通過交換機(jī)、HUB集線器或者路由器50以總線方式相連,業(yè)務(wù)處理系統(tǒng)40產(chǎn)生的各類數(shù)據(jù)包在該信道中以廣播方式傳輸,為備用機(jī)20的數(shù)據(jù)備份提供了物理環(huán)境;數(shù)據(jù)庫局域網(wǎng)系統(tǒng)30由主用機(jī)10和備用機(jī)20組成,備用機(jī)20可以是一個(gè)或多個(gè),這里只列出了一個(gè)備用機(jī)20,主用機(jī)10和備用機(jī)20的網(wǎng)卡被設(shè)置為"混雜"Promiscuous模式,接收共享信道局域網(wǎng)上的數(shù)據(jù)包;主用機(jī)代理101位于主用機(jī)10上的,備用機(jī)代理201位于備用機(jī)20上的代理,分別操作處理主用機(jī)10上的數(shù)據(jù)庫實(shí)例102和備用機(jī)20上的數(shù)據(jù)庫實(shí)例202,它們可以是任何一種支持SQL的數(shù)據(jù)庫;主用才幾代理101和備用機(jī)代理201以及多個(gè)備用機(jī)代理201之間通過代理間通信網(wǎng)絡(luò)60通訊,通信網(wǎng)絡(luò)60可以是TCP/IP也可以是RS235,代理間通過消息確認(rèn)用以主備切換。其中,業(yè)務(wù)處理系統(tǒng)40和由主用才幾10和備用才幾20組成的數(shù)據(jù)庫局域網(wǎng)系統(tǒng)30之間采用TCP/IP網(wǎng)絡(luò)連接;主用機(jī)10和備用機(jī)20上各有一個(gè)代理進(jìn)程101和201負(fù)責(zé)1)數(shù)據(jù)包處理2)IP地址替換3)發(fā)起主備切換;TCP/IP或串口RS235鏈接進(jìn)行通訊;備用機(jī)人為定義為第一個(gè)備用機(jī)、第二個(gè)備用機(jī)等;主/備用機(jī)軟硬件配置相同。第三步,進(jìn)一步說明本發(fā)明數(shù)據(jù)庫局域網(wǎng)系統(tǒng)的讀寫操作(-)讀數(shù)據(jù)操作,包括以下步驟1.業(yè)務(wù)處理系統(tǒng)中,讀數(shù)據(jù)搡作(SQL語句字符串),經(jīng)網(wǎng)絡(luò)/傳輸/鏈路層打包后,進(jìn)入TCP/IP網(wǎng)絡(luò)中的交換機(jī)緩存;2.交換機(jī)向主/備用機(jī),通過廣播方式發(fā)出讀數(shù)據(jù)操作數(shù)據(jù)包,主用機(jī)上的代理收到讀數(shù)據(jù)操作數(shù)據(jù)包,備用機(jī)上的代理也收到讀數(shù)據(jù)操作數(shù)據(jù)包;3.主/備用機(jī)上的代理接受讀數(shù)據(jù)操作數(shù)據(jù)包后,主用機(jī)和備用機(jī)上的切換計(jì)時(shí)器同時(shí)開始計(jì)時(shí);4.主用機(jī)上的數(shù)據(jù)庫實(shí)例對(duì)數(shù)據(jù)包中SQL語句字符串處理后,返回給主用機(jī)上的代理兩類數(shù)據(jù)業(yè)務(wù)數(shù)據(jù),成功/失敗標(biāo)識(shí)(包括硬件,當(dāng)機(jī),超時(shí),SQL語法,查不到數(shù)據(jù)等故障,由代理進(jìn)一步分揀處理然后進(jìn)行判別),備用^幾上處理過程與主用^幾一樣,也返回這兩類數(shù)據(jù),如果備用才幾失敗次數(shù)達(dá)到一定次數(shù),則第一備用機(jī)由原第二備用機(jī)替代,依次類推,并告警;5.主用機(jī)上的代理將業(yè)務(wù)數(shù)據(jù)打包通過TCP/IP網(wǎng)絡(luò)返回給業(yè)務(wù)處理系統(tǒng),備用機(jī)上的代理則將各自數(shù)據(jù)庫返回的數(shù)據(jù)全部屏蔽(全部攔截,不向業(yè)務(wù)處理系統(tǒng)返回?cái)?shù)據(jù)包),將成功/失敗標(biāo)識(shí)通過另一套網(wǎng)絡(luò)返回給主用機(jī)上的代理,主用機(jī)上的代理然后向各備用機(jī)發(fā)回響應(yīng)消息;6.如果主用機(jī)上的代理監(jiān)測(cè)到主機(jī)上的數(shù)據(jù)庫實(shí)例失敗,或者主用機(jī)上的切換計(jì)時(shí)器已經(jīng)超時(shí),并且已收到第一個(gè)備用機(jī)上的代理返回的成功標(biāo)識(shí),則由主機(jī)代理發(fā)起切換,由第一個(gè)備用機(jī)接管主機(jī),這個(gè)備用機(jī)上的代理首先發(fā)起替換主用機(jī)IP操作,然后將業(yè)務(wù)數(shù)據(jù)打包通過交換機(jī)網(wǎng)絡(luò)返回給業(yè)務(wù)處理系統(tǒng)。這是主用機(jī)上的代理正常,在一個(gè)讀數(shù)據(jù)操作周期的時(shí)間中,由主用機(jī)上的代理發(fā)起主備切換的情況;7.如果第5步中,備用機(jī)上的代理在第4步啟動(dòng)的切換計(jì)時(shí)器超時(shí)到來之前,仍未收到主用機(jī)上的代理的響應(yīng)消息,則由第一個(gè)備用機(jī)上的代理發(fā)起主備切換;8.如果第一個(gè)備用機(jī)發(fā)起主備切換失敗,則由第二個(gè)備用機(jī)接著發(fā)起主備切換,直到備用機(jī)全部失??;仁)寫數(shù)據(jù)操作,包括以下步驟1.業(yè)務(wù)處理系統(tǒng)中,寫數(shù)據(jù)操作(SQL語句字符串),經(jīng)網(wǎng)絡(luò)/傳輸/鏈路層打包后,進(jìn)入TCP/IP網(wǎng)絡(luò)中的交換機(jī)緩存;2.交換機(jī)向主/備用機(jī),通過廣播方式發(fā)出讀數(shù)據(jù)操作數(shù)據(jù)包,主用機(jī)上的代理收到寫數(shù)據(jù)操作數(shù)據(jù)包,備用機(jī)上的代理也收到寫數(shù)據(jù)操作數(shù)據(jù)包;3.主/備用機(jī)上的代理接受寫數(shù)據(jù)操作數(shù)據(jù)包后,主用機(jī)和備用機(jī)上的切換計(jì)時(shí)器開始計(jì)時(shí);4.主用機(jī)上的數(shù)據(jù)庫實(shí)例對(duì)數(shù)據(jù)包中SQL語句字符串處理后,返回給主用機(jī)上的代理僅一類數(shù)據(jù)成功/失敗標(biāo)識(shí)(包括硬件,當(dāng)機(jī),超時(shí),SQL語法,查不到數(shù)據(jù)等故障,由代理進(jìn)一步分揀處理然后進(jìn)行判別),備用機(jī)上處理過程與主用機(jī)一樣,也返回這一類數(shù)據(jù),如果備用機(jī)失敗次數(shù)達(dá)到一定次數(shù),則第一備用機(jī)由原第二備用機(jī)替代,依次類推,并告警;5.主用機(jī)上的代理將成功/失敗標(biāo)識(shí)通過TCP/IP網(wǎng)絡(luò)返回給業(yè)務(wù)處理系統(tǒng),備用機(jī)將成功/失敗標(biāo)識(shí)通過另一套網(wǎng)絡(luò)返回給主用機(jī)上的代理,主用機(jī)上的代理然后向各備用機(jī)發(fā)回響應(yīng)消息;6.如果主用機(jī)上的代理監(jiān)測(cè)到主機(jī)上的數(shù)據(jù)庫實(shí)例失敗,或者主用機(jī)上的切換計(jì)時(shí)器已經(jīng)超時(shí),并且已收到第一個(gè)備用機(jī)上的代理返回的成功標(biāo)識(shí),則由主機(jī)代理發(fā)起切換,由第一個(gè)備用機(jī)接管主機(jī),這個(gè)備用機(jī)上的代理首先發(fā)起替換主用機(jī)IP操作,然后將業(yè)務(wù)數(shù)據(jù)打包通過交換機(jī)網(wǎng)絡(luò)返回給業(yè)務(wù)處理系統(tǒng)。這是主用機(jī)上的代理正常,在一個(gè)讀數(shù)據(jù)操作周期的時(shí)間中,由主用機(jī)上的代理發(fā)起主備切換的情況;7.如果第5步中,備用機(jī)上的代理在第4步啟動(dòng)的切換計(jì)時(shí)器超時(shí)到來之前,仍未收到主用機(jī)上的代理的響應(yīng)消息,則由第一個(gè)備用機(jī)上的代理發(fā)起主備切換;8.如果第一個(gè)備用機(jī)上的代理發(fā)起主備切換失敗,則由第二個(gè)備用機(jī)上的代理接著發(fā)起主備切換,直到備用機(jī)全部失??;其中,讀/寫數(shù)據(jù)過程中,最大的區(qū)別是主/備用機(jī)上的數(shù)據(jù)庫實(shí)例處理SQL后返回結(jié)果不同如果是讀數(shù)據(jù)過程,則除了成功/失敗標(biāo)識(shí),還有返回查詢結(jié)果集,寫數(shù)據(jù)過程則不會(huì)返回結(jié)果集,主/備用機(jī)在這上面的處理不一樣,其余相同。第四步,說明本發(fā)明數(shù)據(jù)備份/數(shù)據(jù)復(fù)制過程,具體如圖2所示,包括以下步驟1.業(yè)務(wù)處理系統(tǒng)40發(fā)起讀、寫操作,在共享信道的局域網(wǎng)中,數(shù)據(jù)包能被該局域網(wǎng)中包括主用機(jī)10和備用機(jī)20的所有節(jié)點(diǎn)偵聽到;2.主用機(jī)代理101和備用機(jī)代理201接收到包含執(zhí)行SQL指令的數(shù)據(jù)包,啟動(dòng)"切換計(jì)時(shí)器",同時(shí),主用機(jī)上的數(shù)據(jù)庫實(shí)例102和備用機(jī)上的數(shù)據(jù)庫實(shí)例202也收到該數(shù)據(jù)包;3.主用機(jī)數(shù)據(jù)庫實(shí)例102對(duì)該SQL操作執(zhí)行完畢,返回成功/失敗標(biāo)志等狀態(tài)碼,主用機(jī)上代理101對(duì)該標(biāo)志進(jìn)行歸類判斷處理,見表l:表1<table>tableseeoriginaldocumentpage9</column></row><table>鍵沖突,找不到數(shù)據(jù),表被鎖...等影響下一次的數(shù)據(jù)庫操作返回業(yè)務(wù)系統(tǒng)40本次操作結(jié)果;如果為同步模式,主用機(jī)上代理101將等待所有備用機(jī)上代理201"操作完畢"通知消息后再返回業(yè)務(wù)處理系統(tǒng)40本次搡作結(jié)果軟件故障,如數(shù)據(jù)庫實(shí)例當(dāng)機(jī),程序異常退出,通信異常...等故障不可恢復(fù),影響下一次的數(shù)據(jù)庫操作,但不需要人工千預(yù)主用才;l上4氣理101啟動(dòng)的"切換計(jì)時(shí)器"已超時(shí),進(jìn)入圖3中由"計(jì)時(shí)器"觸發(fā)的切換流程"2"。硬件故障,如機(jī)器當(dāng)機(jī),網(wǎng)卡異常,磁盤壞道...等故障不可恢復(fù),影響很長時(shí)間段的數(shù)據(jù)庫操作,需要人工干預(yù)硬件故障已影響到主用機(jī)上代理101的運(yùn)行,無法對(duì)備用機(jī)上代理201"操作完畢"通知消息進(jìn)行響應(yīng)。4.備用機(jī)數(shù)據(jù)庫實(shí)例202對(duì)該SQL操作執(zhí)行完畢,返回成功/失敗標(biāo)志等狀態(tài)碼,備用機(jī)上代理201對(duì)該標(biāo)志進(jìn)行歸類判斷處理,見表2:表2故障類型歸類標(biāo)準(zhǔn)處理過程邏輯故障,如主鍵沖突,找不到數(shù)據(jù),表被鎖...等故障可恢復(fù),不影響下一次的數(shù)據(jù)庫操作備用機(jī)上的代理201向主用機(jī)上的代理101發(fā)本次"梯:作完畢"的通知消息軟件故障,如數(shù)據(jù)庫實(shí)例當(dāng)機(jī),程序異常退出,通信異常...等故障不可恢復(fù),影響下一次的數(shù)據(jù)庫操作,但不需要人工千預(yù)備用機(jī)上代理201啟動(dòng)的"切換計(jì)時(shí)器"已超時(shí),進(jìn)入圖3中由"計(jì)時(shí)器"觸發(fā)的切換流程"2",但不切換。硬件故障,如機(jī)器當(dāng)機(jī),網(wǎng)卡異常,磁盤壞道...等故障不可恢復(fù),影響很長時(shí)間段的數(shù)據(jù)庫操作,需要人工千預(yù)硬件故障已影響到備用機(jī)上代理201的運(yùn)行,無法發(fā)起"操作完畢"通知消息5.如果第3步中硬件故障已影響到主用機(jī)上代理101的運(yùn)行,無法對(duì)備用機(jī)上代理201"操作完畢"通知消息進(jìn)行響應(yīng),則將引起備用機(jī)代理201收不到響應(yīng)而進(jìn)入切換流程;6.如果第4步中硬件故障已影響到備用機(jī)上代理201的運(yùn)行,無法發(fā)起"操作完畢"通知消息,則將引起主用機(jī)代理101收不到消息,并將該備用機(jī)記為失效,由下一個(gè)備用機(jī)接替下一次可能發(fā)生的切換;7.數(shù)據(jù)備份的過程在第2步,第4步中完成,備用機(jī)上代理201偵聽到業(yè)務(wù)處理系統(tǒng)40發(fā)往主用機(jī)10的IP數(shù)據(jù)包,并不接照正常情況下進(jìn)行丟棄,而將其分拆處理后繼續(xù)發(fā)給備用機(jī)上數(shù)據(jù)庫實(shí)例202;最后,說明本發(fā)明主備機(jī)切換過程,具體如圖3所示,包括以下步驟1.在備用機(jī)上數(shù)據(jù)庫實(shí)例20b完成本次SQL操作,由備用機(jī)上代理201發(fā)出本次"操作完畢"的消息,通知主用機(jī)上代理101之后,如果備用機(jī)上代理201在一定時(shí)間之內(nèi)未收到主用機(jī)上代理101的響應(yīng)消息,則發(fā)回本次數(shù)據(jù)庫操作成功/失敗標(biāo)志等結(jié)果給業(yè)務(wù)處理系統(tǒng)40;2.返回結(jié)果后,由備用機(jī)上代理201發(fā)起切換,通知余下的備用機(jī)該備用機(jī)升為主用機(jī),并得到所有正常備用機(jī)的確認(rèn),完成一些初始化工作;3.在主用機(jī)上代理101接收到來自業(yè)務(wù)處理系統(tǒng)40的SQL操作數(shù)據(jù)包之后,主用機(jī)上代理101啟動(dòng)"切換"計(jì)時(shí)器,如果主用機(jī)正常,到主用機(jī)代理101返回業(yè)務(wù)系統(tǒng)本次成功/失敗標(biāo)志等結(jié)果的時(shí)候,會(huì)將計(jì)時(shí)器停止清零,如果超時(shí),則發(fā)起"切換,,流程"2";4.由主用機(jī)上代理101通知所有的備用機(jī),備用機(jī)在整個(gè)系統(tǒng)初始化的時(shí)候就確定了替換順序隊(duì)列,由隊(duì)列頭的備用機(jī)升為主用機(jī),主用機(jī)10進(jìn)入替換隊(duì)列尾,變?yōu)閭溆脵C(jī)20,并得到所有正常備用機(jī)的確認(rèn),完成一些初始化工作;5.備用機(jī)上代理201將備用機(jī)的IP替換成主用機(jī)的IP后,即可接收來自業(yè)務(wù)處理系統(tǒng)40的數(shù)據(jù)包,進(jìn)行數(shù)據(jù)庫的SQL操作;6.主備切換的過程通過主備機(jī)上代理間的消息交互和主備機(jī)上代理所管理的"切換"計(jì)時(shí)器來完成,前者確保硬件故障下能進(jìn)行主備切換,后者確保軟件故障下能進(jìn)行主備切換。權(quán)利要求1.一種數(shù)據(jù)庫系統(tǒng)切換方法,其特征在于,主用機(jī)代理和備用機(jī)代理根據(jù)廣播的數(shù)據(jù)庫操作數(shù)據(jù)包進(jìn)行操作,還包括以下步驟1.1)備用機(jī)代理將自身數(shù)據(jù)庫操作結(jié)果通過消息傳遞給主用機(jī)代理;1.2)主用機(jī)代理接收并返回響應(yīng);1.3)備用機(jī)代理根據(jù)主用機(jī)代理無響應(yīng)次數(shù)達(dá)到門限進(jìn)行主備切換或者主用機(jī)代理根據(jù)自身數(shù)據(jù)庫操作超出其切換計(jì)時(shí)器通知已傳遞消息的備用機(jī)代理進(jìn)行主備切換。2、根據(jù)權(quán)利要求1所述切換方法,其特征在于,所述備用機(jī)是多個(gè),按其替換隊(duì)列優(yōu)先順序發(fā)起主備切換。3、根據(jù)權(quán)利要求1所述切換方法,其特征在于,所述備用機(jī)根據(jù)自身數(shù)據(jù)庫操作超出其切換計(jì)時(shí)器通知主用機(jī)代理其失效。4、根據(jù)權(quán)利要求3所述切換方法,其特征在于,所述備用機(jī)根據(jù)自身數(shù)據(jù)庫操作超出其切換計(jì)時(shí)器還輸出失效告警。5、根據(jù)權(quán)利要求1所述切換方法,其特征在于,所述主備切換包括備用機(jī)代理將備用機(jī)IP地址改為主用機(jī)IP地址。6、根據(jù)權(quán)利要求1或2所述切換方法,其特征在于,所述主備切換包括主用機(jī)代理將主用機(jī)改為備用機(jī),并置于所述替換隊(duì)列隊(duì)尾。7、根據(jù)權(quán)利要求1所述切換方法,其特征在于,所述主用機(jī)和備用機(jī)通過總線方式進(jìn)行網(wǎng)絡(luò)連接。8、根據(jù)權(quán)利要求1所述切換方法,其特征在于,所述主用機(jī)和備用才幾的網(wǎng)卡i殳為Promiscuous才莫式。全文摘要本發(fā)明涉及一種數(shù)據(jù)庫系統(tǒng)切換方法,包括將原始相同的數(shù)據(jù)庫在多個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)中獨(dú)立保存;將該網(wǎng)絡(luò)通過網(wǎng)關(guān)/路由器與業(yè)務(wù)處理系統(tǒng)連接;該網(wǎng)內(nèi)各節(jié)點(diǎn)通過同時(shí)偵聽網(wǎng)內(nèi)廣播的數(shù)據(jù)庫操作數(shù)據(jù)包對(duì)各自數(shù)據(jù)庫實(shí)例進(jìn)行相同數(shù)據(jù)庫操作完成數(shù)據(jù)備份。這種方法,利用以太網(wǎng)廣播在多節(jié)點(diǎn)進(jìn)行備份,進(jìn)一步利用消息確認(rèn)機(jī)制、切換計(jì)時(shí)器來進(jìn)行數(shù)據(jù)庫系統(tǒng)主備機(jī)切換,從而能在一個(gè)確定的數(shù)據(jù)操作周期的時(shí)間中完成主備切換且系統(tǒng)簡(jiǎn)單,特別能夠解決移動(dòng)通信HLR網(wǎng)元中,數(shù)據(jù)庫系統(tǒng)常常因?yàn)樗矓嗷蛞恍┏绦蛑袛嗟犬惓6鸬臉I(yè)務(wù)癱瘓,盡可能減小因?yàn)閿?shù)據(jù)庫異常帶來的系統(tǒng)不穩(wěn)定性。文檔編號(hào)H04L12/24GK101212341SQ200610161789公開日2008年7月2日申請(qǐng)日期2006年12月25日優(yōu)先權(quán)日2006年12月25日發(fā)明者健羅申請(qǐng)人:中興通訊股份有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1