夢(mèng)數(shù)據(jù)復(fù)制軟件)
一、簡(jiǎn)介1.1前言達(dá)夢(mèng)數(shù)據(jù)復(fù)制軟件簡(jiǎn)稱 DMDRS是一種用于同構(gòu)數(shù)據(jù)庫、異構(gòu)數(shù)據(jù)庫以及各種數(shù)據(jù)管理系統(tǒng)之間的數(shù)據(jù)復(fù)制軟件。DMDRS 采用模塊化的設(shè)計(jì)通過靈活配置不同的功能模塊實(shí)現(xiàn)多功能的數(shù)據(jù)復(fù)制服務(wù)以滿足多種場(chǎng)景下的數(shù)據(jù)復(fù)制業(yè)務(wù)需求。1.2產(chǎn)品架構(gòu)1.3 產(chǎn)品服務(wù)DMDRS 通過配置不同的功能模塊可以實(shí)現(xiàn)多功能的數(shù)據(jù)復(fù)制服務(wù)常用服務(wù)如下服務(wù)名稱主要組成模塊程序名稱服務(wù)功能源 DMDRSManager、CPT、CVT可選drsvr部署在源數(shù)據(jù)庫所在服務(wù)器用于全量數(shù)據(jù)裝載和增量數(shù)據(jù)實(shí)時(shí)捕獲解析并投遞到下一級(jí) DMDRS 服務(wù)。當(dāng)配置有 CVT 模塊時(shí)還可實(shí)現(xiàn)實(shí)時(shí)清洗轉(zhuǎn)換功能。目標(biāo) DMDRSManager、EXEC、CVT可選drsvr部署在可通過網(wǎng)絡(luò)連接目標(biāo)數(shù)據(jù)庫的服務(wù)器或者部署在目標(biāo)數(shù)據(jù)庫所在服務(wù)器用于接收源 DMDRS 發(fā)送的日志消息進(jìn)行同步執(zhí)行完成數(shù)據(jù)同步。當(dāng)配置有 CVT 模塊時(shí)還可實(shí)現(xiàn)實(shí)時(shí)清洗轉(zhuǎn)換功能。1.4 應(yīng)用場(chǎng)景基于數(shù)據(jù)復(fù)制業(yè)務(wù)的應(yīng)用場(chǎng)景DMDRS 提供數(shù)據(jù)遷移、數(shù)據(jù)同步、數(shù)據(jù)分發(fā)和數(shù)據(jù)轉(zhuǎn)換等功能而且數(shù)據(jù)同步功能還支持一對(duì)一、雙向、一對(duì)多、多對(duì)一、級(jí)聯(lián)同步、環(huán)形同步和 DMDRS 主備等多種同步拓?fù)浣Y(jié)構(gòu)。本次實(shí)操演示的為dm8-dm8的一對(duì)一數(shù)據(jù)同步同時(shí)CPT與EXEC分別部署在對(duì)應(yīng)的數(shù)據(jù)庫上二、DMDRS搭建2.1 數(shù)據(jù)庫準(zhǔn)備工作運(yùn)行DMDRS服務(wù)前數(shù)據(jù)庫管理員需要對(duì)數(shù)據(jù)庫做如下準(zhǔn)備工作。配置服務(wù)準(zhǔn)備工作源DMDRS除數(shù)據(jù)遷移場(chǎng)景外其他應(yīng)用場(chǎng)景均需要開啟源數(shù)據(jù)庫的歸檔和邏輯日志。除數(shù)據(jù)遷移場(chǎng)景外其他應(yīng)用場(chǎng)景均需要配置DDL同步。創(chuàng)建源數(shù)據(jù)庫同步用戶DMDRS。配置源數(shù)據(jù)庫同步用戶最小權(quán)限。目標(biāo)DMDRS創(chuàng)建目標(biāo)數(shù)據(jù)庫同步用戶DMDRS。配置目標(biāo)數(shù)據(jù)庫同步用戶最小權(quán)限。DMDSS無2.1.1開啟源數(shù)據(jù)庫的歸檔和邏輯日志采用動(dòng)態(tài)配置方法開啟數(shù)據(jù)庫歸檔。DM8單機(jī)SQL alter database mount;SQL alter database archivelog;SQL alter database add archivelog DEST/dmarch,TYPELOCAL,FILE_SIZE512,SPACE_LIMIT10240;SQL alter database open調(diào)用系統(tǒng)過程SP_SET_PARA_VALUE配置DM8數(shù)據(jù)庫配置文件“dm.ini”中RLOG_APPEND_LOGIC參數(shù)值。參數(shù)配置說明如下所示以參數(shù)值設(shè)置為1為例。SQL call sp_set_para_value(1,RLOG_APPEND_LOGIC,1);通過靜態(tài)配置或者動(dòng)態(tài)配置開啟源數(shù)據(jù)庫的歸檔和邏輯日志后檢查ARCH_INI和RLOG_APPEND_LOGIC參數(shù)配置是否生效。檢查ARCH_INI參數(shù)配置是否生效。SQL select para_name, para_value, sess_value, file_value from V$DM_INI where para_name ARCH_INI;查詢結(jié)果如下如果存在以上查詢結(jié)果表示ARCH_INI參數(shù)配置已生效。檢查RLOG_APPEND_LOGIC參數(shù)配置是否生效。SQL select para_name, para_value, sess_value, file_value from V$DM_INI where para_name RLOG_APPEND_LOGIC;查詢結(jié)果如下如果存在以上查詢結(jié)果表示RLOG_APPEND_LOGIC參數(shù)配置已生效。2.1.2配置DDL同步DMDRS服務(wù)支持DDL同步功能。當(dāng)應(yīng)用場(chǎng)景中需要DDL同步時(shí)數(shù)據(jù)庫管理員可按下列方式之一進(jìn)行配置。采用系統(tǒng)表方式動(dòng)態(tài)配置調(diào)用系統(tǒng)過程SP_SET_PARA_VALUE將源數(shù)據(jù)庫配置文件“dm.ini”中RLOG_APPEND_SYSTAB_LOGIC參數(shù)值設(shè)置為1。SQL call sp_set_para_value(1,RLOG_APPEND_SYSTAB_LOGIC,1);檢查RLOG_APPEND_SYSTAB_LOGIC參數(shù)配置是否生效。SQL select para_name, para_value, sess_value, file_value from V$DM_INI where para_name RLOG_APPEND_SYSTAB_LOGIC;查詢結(jié)果如下如果存在以上查詢結(jié)果表示RLOG_APPEND_SYSTAB_LOGIC參數(shù)配置已生效。2.1.3創(chuàng)建數(shù)據(jù)庫同步用戶DMDRS2.1.3.1DM8源端源端DM8庫創(chuàng)建DMDRS用戶用于同步數(shù)據(jù)-- 1. 創(chuàng)建 DMDRS 表空間自動(dòng)擴(kuò)展最大 10Gcreate tablespace DMDRS_DAT datafile DMDRS_DAT01.DBF size 128 autoextend on maxsize 10240 CACHE NORMAL;create tablespace DMDRS_IDX datafile DMDRS_IDX01.DBF size 128 autoextend on maxsize 10240 CACHE NORMAL;-- 2. 創(chuàng)建 DMDRS 用戶 指定默認(rèn)表空間 20G 配額create user DMDRS identified by Dameng123 password_policy 15default tablespace DMDRS_DATdefault index tablespace DMDRS_IDX;配置數(shù)據(jù)庫同步用戶最小權(quán)限D(zhuǎn)MDRS服務(wù)運(yùn)行過程中使用的數(shù)據(jù)庫同步用戶需要一定的權(quán)限訪問數(shù)據(jù)庫數(shù)據(jù)如果不能賦予DMDRS同步用戶DBA權(quán)限為確保同步的正確性數(shù)據(jù)庫管理員可根據(jù)應(yīng)用場(chǎng)景配置數(shù)據(jù)庫同步用戶的最小權(quán)限。-- 3. 授予必需最小權(quán)限grant PUBLIC,RESOURCE,SOI,VTI to DMDRS;grant CREATE SESSION to DMDRS;2.1.3.2DM8目的端目的端DM8庫創(chuàng)建DMDRS用戶用于同步數(shù)據(jù)-- 1. 創(chuàng)建 DMDRS 表空間自動(dòng)擴(kuò)展最大 10Gcreate tablespace DMDRS_DAT datafile DMDRS_DAT01.DBF size 128 autoextend on maxsize 10240 CACHE NORMAL;create tablespace DMDRS_IDX datafile DMDRS_IDX01.DBF size 128 autoextend on maxsize 10240 CACHE NORMAL;-- 2. 創(chuàng)建 DMDRS 用戶 指定默認(rèn)表空間 20G 配額create user DMDRS identified by Dameng123 password_policy 15default tablespace DMDRS_DATdefault index tablespace DMDRS_IDX;DM8目標(biāo)數(shù)據(jù)庫同步用戶最小權(quán)限-- 3. 授予必需最小權(quán)限grant PUBLIC,RESOURCE,SOI,VTI to DMDRS;grant CREATE SESSION to DMDRS;【基礎(chǔ)權(quán)限】-- 插入、刪除、更新數(shù)據(jù)時(shí)需要數(shù)據(jù)操作權(quán)限GRANT PUBLIC TO DMDRS;-- 啟動(dòng)時(shí)需要在目標(biāo)數(shù)據(jù)庫中創(chuàng)建輔助表和輔助存儲(chǔ)過程GRANT RESOURCE TO DMDRS;-- 需要查詢數(shù)據(jù)庫的相關(guān)參數(shù)信息、系統(tǒng)表字典信息GRANT SOI,VTI TO DMDRS;-- 需要?jiǎng)?chuàng)建會(huì)話權(quán)限GRANT CREATE SESSION TO DMDRS;2.1.4DMDRS服務(wù)管理規(guī)劃在配置DMDRS服務(wù)前需規(guī)劃DMDRS服務(wù)的Manager模塊的端口號(hào)包括源DMDRS、目標(biāo)DMDRS服務(wù)和DMDSS服務(wù)的Manager模塊的端口號(hào)。注意不同的應(yīng)用場(chǎng)景DMDRS所包括的DMDRS服務(wù)不同。如果在同一臺(tái)服務(wù)器上部署不同的服務(wù)必須確保這些服務(wù)的Manager模塊的端口號(hào)的唯一性。源端數(shù)據(jù)庫源端數(shù)據(jù)庫IPCPT服務(wù)名站點(diǎn)號(hào)CPT的mgr端口目的端數(shù)據(jù)庫目的端數(shù)據(jù)庫IPEXEC服務(wù)名站點(diǎn)號(hào)EXEC的mgr端口bin命名DM8單機(jī)192.168.5.148cpt_dm8站點(diǎn)15345DM8單機(jī)192.168.5.147exec_dm8站點(diǎn)25345bin_cptbin_exec2.2軟件安裝2.2.1 源端dm8 DRS安1先創(chuàng)建安裝目錄mkdir -p /dmdrschown -R dmdba:dinstall /dmdrschmod -R 755 /dmdrs2上傳 DMDRS 安裝包到 opt 目錄并修改權(quán)限3配置 key 文件將 DMDRS 的 key 文件上傳并重命名為 dmdrs.key。修改 dmdrs.key 的用戶及權(quán)限并將 dmdrs.key 移動(dòng)到 /home/dmdba 目錄下。4安裝部署啟動(dòng)安裝程序使用 dmdba 用戶啟動(dòng)安裝文件。su - dmdbamkdir -p /home/dmdba/tmp_drsexport DMDRS_INSTALL_TMPDIR/home/dmdba/tmp_drschmod 777 /home/dmdba/tmp_drscd /opt./dmdrs.bin -i注DMDRS 安裝時(shí)提供 2 個(gè)組件進(jìn)行選擇安裝。“達(dá)夢(mèng)數(shù)據(jù)融合管理平臺(tái)”簡(jiǎn)稱 DMDFM 是達(dá)夢(mèng)為解決大型數(shù)據(jù)復(fù)制、數(shù)據(jù)集成項(xiàng)目的管理運(yùn)維問題而推出的一款集安裝配置、設(shè)計(jì)管理、監(jiān)控運(yùn)維于一體的軟件。使用 DMDFM 可以快速安裝配置達(dá)夢(mèng)數(shù)據(jù)復(fù)制軟件DMDRS、達(dá)夢(mèng)數(shù)據(jù)集成軟件DMDIS以及達(dá)夢(mèng)數(shù)據(jù)校驗(yàn)軟件DMDVS支持各種復(fù)雜拓?fù)浣Y(jié)構(gòu)同步鏈路的拖拽設(shè)計(jì)支持監(jiān)控大量的數(shù)據(jù)鏈路極大地提升大型項(xiàng)目的實(shí)施和運(yùn)維效率。代理DMDFM 通過代理來進(jìn)行管理、監(jiān)控和實(shí)現(xiàn)各項(xiàng)功能以下配置腳本需要以root用戶的身份運(yùn)行./dmdrs/scripts/root/root_installer.sh是否已執(zhí)行shell腳本?(Y/y or N/n)[Y/y]:y-----------安裝總結(jié)-----------達(dá)夢(mèng)數(shù)據(jù)復(fù)制軟件V5安裝完成更多安裝信息請(qǐng)查看安裝日志文件/dmdrs/log/install.log2.2.2 目的端dm8 DRS安裝目的端安裝步驟與源端相同-----------安裝小結(jié)-----------安裝目錄:[/dmdrs]數(shù)據(jù)庫驅(qū)動(dòng)路徑:[/dmdbms/bin]代理IP:[192.168.5.147]代理端口:[19345]達(dá)夢(mèng)數(shù)據(jù)融合管理平臺(tái)IP:[192.168.5.147]達(dá)夢(mèng)數(shù)據(jù)融合管理平臺(tái)端口:[8080]所需磁盤空間/可用磁盤空間:[304 MB/27,319 MB]2.3設(shè)置環(huán)境變量DMDRS服務(wù)運(yùn)行過程中需要使用數(shù)據(jù)庫的驅(qū)動(dòng)文件訪問數(shù)據(jù)庫數(shù)據(jù)。在終端的配置文件中添加設(shè)置環(huán)境變量命令。export LD_LIBRARY_PATHDMDPI驅(qū)動(dòng)路徑:$LD_LIBRARY_PATH具體實(shí)現(xiàn)su - dmdbavi /home/dmdba/.bash_profileexport LD_LIBRARY_PATH/dmdbms/bin:$LD_LIBRARY_PATHsource /home/dmdba/.bash_profileecho $LD_LIBRARY_PATH2.4DMDRS配置DMDRS使用XML文件作為配置文件通過XML配置文件配置產(chǎn)品服務(wù)功能。常用產(chǎn)品服務(wù)的配置文件模板存放于DMDRS安裝目錄下配置文件模板名稱和默認(rèn)配置文件名稱如下表所示。DMDRS服務(wù)配置文件模板默認(rèn)配置文件源DMDRScpt.xml、cpt_dsc.xmldrs.xml目標(biāo)DMDRSexec.xmldrs.xmlDMDRS的XML配置文件的格式如下表所示。組成部分語法說明聲明語句?xml version1.0 encodingGB18030?包括XML版本號(hào)和字符集聲明。根元素drs/drs根元素中包括所有的子元素。子元素Manager模塊base/baseCPT模塊cpt/cptDSS模塊dss/dssEXEC模塊exec/exec各模塊對(duì)應(yīng)的子元素中還包括具體的元素具體請(qǐng)參見《DMDRS參考手冊(cè)》。2.4.1 配置源DMDRS1復(fù)制bin目錄cd /dmdrscp -r bin bin_cpt源數(shù)據(jù)庫為DM8單機(jī)vi /dmdrs/bin_cpt/drs.xml?xml version1.0 encodingGB18030?drsbasemgr_port5345/mgr_portsiteid1/siteidmem_size2/mem_sizelangch-utf8/lang/basecptnamecpt_dm8/namelogindbtypedm8/dbtypeserver192.168.5.148/serveruserDMDRS/userpwdDameng123/pwdport5237/port/loginsendip192.168.5.147/ipport5345/porttarget_nameexec_dm8/target_namemapitemDMDRS.*DMDRS.*/item/map/send/cpt/drs2.4.2配置目標(biāo)DMDRS1復(fù)制bin目錄cd /dmdrscp -r bin bin_exec目標(biāo)數(shù)據(jù)庫為DM8單機(jī)vi /dmdrs/bin_cpt/drs.xml?xml version1.0 encodingGB18030?drsbasemgr_port5345/mgr_portsiteid2/siteidmem_size2/mem_sizelangch-utf8/lang/baseexecnameexec_dm8/namelogindbtypedm8/dbtypeserver192.168.5.147/serveruserDMDRS/userpwdDameng123/pwdport5237/port/login/exec/drs2.5 管理服務(wù)2.5.1 配置DMDRS服務(wù)腳本-源端## DRS的后臺(tái)啟動(dòng)腳本需要人工復(fù)制創(chuàng)建然后才能注冊(cè)服務(wù)cd /dmdrs/bin_cpt/service_templatecp TemplateService ../DrsServicecd /dmdrs/bin_cptvi DrsService## 將以下信息進(jìn)行修改INSTALL_HOME/dmdrs #DRS安裝目錄PROG_DIR/dmdrs/bin_cpt #cpt的bin目錄CONF_PATH/dmdrs/bin_cpt/drs.xml #cpt的配置文件NEED_LIB_PATH/dmdbms/bin #DM8的bin目錄EXEC_PROG_NAMEdrsvrSERVICE_TYPE_NAMEdrs server2.5.2配置DMDRS服務(wù)腳本-目的端將服務(wù)腳本模板TemplateService拷貝到執(zhí)行程序目錄并修改服務(wù)腳本的名稱為默認(rèn)服務(wù)腳本名。cd /dmdrs/bin_exec/service_templatecp TemplateService ../DrsServicecd /dmdrs/bin_execvi DrsService打開并修改服務(wù)腳本中的相關(guān)配置參數(shù)。INSTALL_HOME/dmdrs #DRS安裝目錄PROG_DIR/dmdrs/bin_exec #exec的bin目錄CONF_PATH/dmdrs/bin_exec/drs.xml #exec的配置文件NEED_LIB_PATH/dmdbms/bin #DM8的bin目錄EXEC_PROG_NAMEdrsvrSERVICE_TYPE_NAMEdrs server2.6DMDRS服務(wù)管理命令啟動(dòng)服務(wù)。./DrsService start停止服務(wù)。./DrsService stop重啟服務(wù)。./DrsService restart啟動(dòng)源DMDRS服務(wù)中的CPT模塊./drcslCSL start如需關(guān)閉CPT模塊可輸入stop命令。CSL stop目標(biāo)DMDRS服務(wù)目標(biāo)DMDRS服務(wù)中的EXEC模塊默認(rèn)是自動(dòng)啟動(dòng)如需關(guān)閉EXEC模塊可輸入stop命令。CSL stop實(shí)操啟動(dòng)狀況源端目的端達(dá)夢(mèng)數(shù)據(jù)庫 - 新一代大型通用關(guān)系型數(shù)據(jù)庫 | 達(dá)夢(mèng)在線服務(wù)平臺(tái)