一. 概述
DM OBSV方案是一個基于日志的數(shù)據(jù)庫級可靠性解決方案,它能夠進(jìn)行主備機(jī)之間的數(shù)據(jù)同步和故障切換,是一個集成化的災(zāi)難恢復(fù)解決方案。
該方案的基本原理是,主機(jī)數(shù)據(jù)庫的任何修改,都將產(chǎn)生REDO日志,在REDO日志寫入聯(lián)機(jī)日志的同時,通過網(wǎng)絡(luò)把REDO日志發(fā)送給遠(yuǎn)程的備機(jī)。備機(jī)收到并利用這些REDO日志執(zhí)行恢復(fù)操作,以實(shí)現(xiàn)數(shù)據(jù)同步。
DM OBSV 方案是由3個部分組成的,分別是:主機(jī)、備機(jī)、協(xié)調(diào)器。主機(jī)是正常情況下我們訪問的機(jī)器;備機(jī)是指當(dāng)主機(jī)出現(xiàn)故障時,備用的機(jī)器;協(xié)調(diào)器的用途是監(jiān)控主備機(jī)狀態(tài),進(jìn)行故障切換。正常情況下,訪問的是主機(jī)的數(shù)據(jù)庫,當(dāng)主機(jī)發(fā)生故障時,則備機(jī)切換為主機(jī)。整個過程對于應(yīng)用程序而言沒有影響,即可提供無縫的主備故障切換服務(wù)。
下面我們介紹一下主備機(jī)的配置過程。
二. 相關(guān)的配置:
達(dá)夢主、備數(shù)據(jù)同步和故障切換配置步驟如下(假設(shè)達(dá)夢數(shù)據(jù)庫服務(wù)器分別部署在223.254.100.59,223.254.100.65和 223.254.100.54上,初始配置223.254.100.59為主機(jī),223.254.100.65為備機(jī),協(xié)調(diào)器部署在223.254.100.54上,端口為:12349
1. 物理數(shù)據(jù)庫文件同步:
a) 在223.254.100.59和223.254.100.65相同路徑下,安裝相同版本的達(dá)夢數(shù)據(jù)庫管理系統(tǒng)(啟動主機(jī)的DM服務(wù),先不啟動備機(jī)的DM服務(wù));
b) 在223.254.100.59上,配置好用戶數(shù)據(jù),新建一個測試庫:
CREATE DATABASE TEST DATAFILE ‘TEST.DBF’ SIZE 64;
c) 停止223.254.100.59上的達(dá)夢服務(wù)器,拷貝完整的數(shù)據(jù)文件(data文件夾中的所有文件)到備機(jī)的data目錄下
d) 再啟動主、備機(jī)的DM服務(wù);
e) 此時,應(yīng)保證沒有其他用戶訪問223.254.100.59和223.254.100.65上的達(dá)夢數(shù)據(jù)庫
2. 利用主機(jī)223.254.100.59的DM管理工具?主備機(jī)同步,配置相關(guān)參數(shù),如下所示:
3. 利用備機(jī)223.254.100.65的DM管理工具?主備機(jī)同步,配置相關(guān)參數(shù),如下所示:
4. 在協(xié)調(diào)器所在的223.254.100.54上的 /dmdbms/bin/下找到obsv.ini文件(若沒有,新建一個),內(nèi)容如下:
#sample obsv.ini file
#this is comments
#log file path
OBSV_LOG_PATH = obsv.log
#coordinator port number
OBSV_PORT= 12349
#dm server host
OBSV_POLL_INTERVAL = 5
DM_SERVER_PORT = 12345
#dm server host
DM_SERVER = 223.254.100.59
#dm server host
DM_SERVER = 223.254.100.65
5.啟動223.254.100.54上的 /dmdbms/bin/ 下的dmobsv
6.到此,所有配置完成。應(yīng)用訪問時,應(yīng)該訪問主機(jī)223.254.100.59的IP,當(dāng)主機(jī)出現(xiàn)故障時,備機(jī)223.254.100.65切換為主機(jī),此時應(yīng)訪問223.254.100.65。
我們也可以使用dm_svc.conf中配置的服務(wù)名來訪問,dm_svc.conf文件的內(nèi)容為
o2000=(223.254.100.59,223.254.100.65),服務(wù)名o2000可以自己更改。Windows系統(tǒng)中該文件放在C:/WINDOWS/system32下即可。
下面我們以故障場景來說明這一方案的效果:
三.典型的應(yīng)用場景
(主機(jī)223.254.100.59 備機(jī)223.254.100.65,以下數(shù)據(jù)同步和故障切換均在test庫上進(jìn)行):
1.在主機(jī)223.254.100.54上建立表:
create table t(a int ,b varchar(10));
往表中插入一條數(shù)據(jù):
insert into t values(1,’abcde’);
commit;
在主機(jī)的dmserver正常退出或被強(qiáng)殺的情況下(如圖,不能登錄主機(jī))
備機(jī)223.254.100.65能切換為主機(jī)異步模式,在備機(jī)上能查到表t中的數(shù)據(jù):
重新啟動223.254.100.59上的達(dá)夢服務(wù)器,它將轉(zhuǎn)換為備機(jī)模式,但是不能直接訪問備機(jī)的test庫:
2.將模式切換過來,主機(jī)223.254.100.59 備機(jī)223.254.100.65
在備223.254.100.65的dmserver正常退出或被強(qiáng)退的情況下
主機(jī)223.254.100.59由同步模式切換為異步模式,不影響使用
3.拔掉主機(jī)的網(wǎng)線:
備機(jī)將切換為主機(jī)異步模式,不影響正常使用。
新聞熱點(diǎn)
疑難解答