天天看點

DMHS配置Oracle11g到DM8實時同步

源端:192.168.1.244 Oracle11g

目的端:192.168.1.225 DM8

1.源端環境檢查:

#資料庫是否開啟歸檔

shutdown immediate

alter database mount;

alter system set db_recovery_file_dest='';

alter system set log_archive_dest_1 = 'location=/data/orcl/arch_log';

alter database open;

DMHS配置Oracle11g到DM8實時同步

 #資料庫附加日志檢查

select supplemental_log_data_min, supplemental_log_data_all from v$database;

--開啟資料庫最小附加日志級全列日志

alter database add supplemental log data;

alter database add supplemental log data (all) columns;

DMHS配置Oracle11g到DM8實時同步

#建立同步使用者DMHS

grant connect to dmhs;

grant select any table to dmhs;

grant select any dictionary to dmhs;

grant create session to dmhs;

grant lock any table to dmhs;

grant execute on dbms_flashback to dmhs;

--如果是oracle12c

grant all on sys.dmhs_ddl_sql to C##dmhs

grant all on sys.col$ to C##dmhs;

grant all on sys.cdef$ to C##dmhs;

grant all on sys.lobfrag$ to C##dmhs;

grant all on sys.obj$ to C##dmhs;

grant all on sys.user$ to C##dmhs;

DMHS配置Oracle11g到DM8實時同步

#配置TNS和監聽

DMHS配置Oracle11g到DM8實時同步

檢查ODBC庫檔案:

DMHS配置Oracle11g到DM8實時同步

 檢查監聽服務是否正常,确認建立使用者可以通過TNS連結正常

DMHS配置Oracle11g到DM8實時同步

 2.目的端達夢資料庫建立同步使用者dmhs 

DMHS配置Oracle11g到DM8實時同步

 3.源端Oracle環境安裝dmhs軟體

DMHS配置Oracle11g到DM8實時同步

 源端dmhs.hs配置檔案

vi dmhs.hs

<?xml version="1.0" encoding="GB2312"?>

<dmhs>

 <base>    <!-- 管理子產品的基本配置 -->

  <lang>en</lang>

  <mgr_port>5345</mgr_port>

  <ckpt_interval>45</ckpt_interval>

  <siteid>3</siteid>    <!-- 站點ID,這個ID配置時要注意,全局唯一,最小值0,最大值65535 -->

  <version>2.0</version>

 </base>

 <cpt>    <!-- 捕獲器子產品,這項配置可以配置多個 -->

  <db_type>ORACLE11g</db_type>    <!-- 源端資料庫類型 -->

  <db_server>ORCL</db_server>    <!-- 源端資料庫服務名,DM8和ORACLE為OCI連接配接的服務名,DM6為連接配接的伺服器IP -->

  <db_user>dmhs</db_user>    <!-- 源端資料庫使用者名 -->

  <db_pwd>dmhs</db_pwd>    <!-- 使用者的密碼 -->

  <db_port>1521</db_port>    <!-- 源端資料庫端口 -->

  <ddl_mask>OP:OBJ</ddl_mask>    <!--DDL配置項,寫的是掩碼,需同步DDL時使用,詳見末尾-->

  <arch>    <!--歸檔資訊配置,該标簽是一個功能标簽,需要配置它的子項-->

   <clear_interval>600</clear_interval>    <!--歸檔日志清理間隔,取值範圍在60-65535,機關秒 -->

   <clear_flag>0</clear_flag>    <!--歸檔日志清理選項,選配0(不操作),預設為0 -->

  </arch>

  <send>    <!-- 此處僅以發送到網絡為例,其他配置詳見本手冊 4.2NET 發送子子產品 -->

   <ip>192.168.1.225</ip>    <!-- 目标端dmhs的伺服器ip -->

   <mgr_port>5345</mgr_port>    <!-- 目标端dmhs的管理端口号 -->

   <data_port>5346</data_port>    <!-- 目标端dmhs的data_port -->

   <filter>    <!-- 過濾配置項,必須指定 -->

    <enable>    <!-- 白名單,允許同步所有的表 -->

     <item>DMHS.*</item>    <!-- 要同步的模式名.表名,*代表所有 -->

    </enable>

   </filter>

   <map>    <!--映射配置項-->

    <item>DMHS.*==DMHS.*</item>    <!-- 要同步的模式名,左邊是源端,右邊是目标端 -->

   </map>

  </send>

 </cpt>

</dmhs>

 #源端模拟測試資料:

DMHS配置Oracle11g到DM8實時同步

4.目的端dmhs.hs配置,啟動目的端./dmhs_server 

vi dmhs.hs

<?xml version="1.0" encoding="GB2312"?>

<dmhs>

    <base>

        <lang>ch</lang>

        <mgr_port>5345</mgr_port>

        <chk_interval>2</chk_interval>

        <ckpt_interval>45</ckpt_interval>

        <siteid>2</siteid>

        <version>2.0</version>

    </base>

    <exec>

       <recv>

        <data_port>5346</data_port>

       </recv>

       <db_type>dm8</db_type>

       <db_server>127.0.0.1</db_server>

       <db_user>SYSDBA</db_user>

       <db_pwd>SYSDBA</db_pwd>

       <db_port>5236</db_port>

       <db_name></db_name>

       <char_code>PG_GB18030</char_code>

       <enable_merge>0</enable_merge>

       <exec_thr>4</exec_thr>

       <exec_policy>0</exec_policy>

       <exec_sql>1024</exec_sql>

       <exec_trx> 5000 </exec_trx>

       <exec_rows>1000</exec_rows>

    </exec>

</dmhs>

./dmhs_console

start exec

5.源端啟動dmhs服務

DMHS配置Oracle11g到DM8實時同步

 6.裝載資料 ,啟動同步

DMHS配置Oracle11g到DM8實時同步

 7.驗證資料,裝載資料正常

DMHS配置Oracle11g到DM8實時同步

 8.模拟新增表删除表

源端Oracle:

DMHS配置Oracle11g到DM8實時同步
DMHS配置Oracle11g到DM8實時同步

達夢資料庫 - 新一代大型通用關系型資料庫 | 達夢線上服務平台