环境介绍

一:源库
1、oracle 11g R2,DMHSV4
2、10.0.0.21,crm库,ZHS16GBK,1521端口,
3、同步用户usercrm,密码abcd1234
4、同步表T01,T02,T03
5、对比工具代理使用端口5347
6、使用system/abcd1234来做对比
7、DMHSV4作为源端,正常工作

二:目标库
1、oracle 11g R2,DMHSV4
2、10.0.0.22,oa库,ZHS16GBK,1521端口,
3、同步用户usercrm,密码abcd1234
4、同步表T01,T02,T03
5、对比工具代理使用端口5347
6、使用system/abcd1234来做对比
7、DMHSV4作为目标端,正常工作

三:达梦数据对比工具
1、对比工具使用独立服务器10.0.0.100,端口使用5347
2、已经安装oracle 11g R2 客户端
3、已经安装DMHSV4
4、已经安装unixODBC 2.3.2以上版本,并配置oracle 11g的driver;验证测试可以:访问源库用dsncrm21,访问目标库dsnoa22,并isql连接测试通过;使用system/abcd1234来做对比
5、已经配置tnsnames.ora,访问源库用oracrm21,访问目标库oraoa22,并通过sqlplus连接测试通过;

10.0.0.21

[oracle@oradb1 etc]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.OA =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.22)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = oa)))CRM =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.21)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = crm)))
[oracle@oradb1 etc]$

10.0.0.22

[oracle@oradb2 ~]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.OA =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = oradb2)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = oa)))CRM =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.21)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = crm)))[oracle@oradb2 ~]$

10.0.0.100

[oracle@veri1 bin]$ cat /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.oraoa22 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.22)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = oa)))oracrm21 =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.21)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = crm)))[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat /dm8/dmhs/odbc/etc/odbcinst.ini
[Oracle in OraDb11g_home1]
Description=ODBC DRIVER FOR ORACLE
Driver=/u01/app/oracle/product/11.2.0/dbhome_1/lib/libsqora.so.11.1
Threading=0[Oracle 11g ODBC driver]
Description=Oracle ODBC driver for Oracle 11g
Driver=/u01/app/oracle/product/11.2.0/dbhome_1/lib/libsqora.so.11.1
[oracle@veri1 bin]$

如果没有模式驱动名称用“Oracle in OraDb11g_home1”,则报错

VERI[ERROR]: state:01000 errmsg:[unixODBC][Driver Manager]Can't open lib 'Oracle in OraDb11g_home1' : file not found
[oracle@veri1 bin]$ cat /dm8/dmhs/odbc/etc/odbc.ini                                        [dsncrm21]
Description=ORACLE ODBC DSN
Driver=Oracle in OraDb11g_home1
SERVER= 10.0.0.21
UserID=system
Password=abcd1234
Servername=oracrm21
PORT=1521[dsnoa22]
Description=ORACLE ODBC DSN
Driver=Oracle in OraDb11g_home1
SERVER=10.0.0.22
UserID=system
Password=abcd1234
Servername=oraoa22
PORT=1521[oracle@veri1 bin]$

架构图

源端agent_src.xml

<?xml version="1.0" encoding="utf-8"?>
<agent><port>5347</port><lang>ch</lang><max_session>50</max_session><mode>0</mode><lock_nowait>1</lock_nowait><pwd_encipher>0</pwd_encipher><dyn_wait_time>100</dyn_wait_time><group_num>0</group_num><thr_num>0</thr_num><database><type>ORACLE11g</type><server>crm</server><!-- ip or server name --><port>1521</port><uid>system</uid><!-- username --><psw>abcd1234</psw><!-- password --><db_name/><db_ssl_path/><db_ssl_pwd/><char_code>PG_GB18030</char_code></database>
</agent>

目标端agent_desc.xml

<?xml version="1.0" encoding="utf-8"?>
<agent><port>5347</port><lang>ch</lang><max_session>50</max_session><mode>0</mode><lock_nowait>1</lock_nowait><pwd_encipher>0</pwd_encipher><dyn_wait_time>100</dyn_wait_time><group_num>0</group_num><thr_num>0</thr_num><database><type>ORACLE11g</type><server>oa</server><!-- ip or server name --><port>1521</port><uid>system</uid><!-- username --><psw>abcd1234</psw><!-- password --><db_name/><db_ssl_path/><db_ssl_pwd/><char_code>PG_GB18030</char_code></database>
</agent>

对比工具veri.xml

[oracle@veri1 bin]$
[oracle@veri1 bin]$ tnsping oraoa22TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 29-MAY-2022 08:21:01Copyright (c) 1997, 2013, Oracle.  All rights reserved.Used parameter files:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.oraUsed TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.22)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = oa)))
OK (0 msec)
[oracle@veri1 bin]$
[oracle@veri1 bin]$ tnsping oracrm21TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 29-MAY-2022 08:21:12Copyright (c) 1997, 2013, Oracle.  All rights reserved.Used parameter files:
/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.oraUsed TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.21)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = crm)))
OK (0 msec)
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat veri.xml <?xml version="1.0" encoding="utf-8"?>
<veri><lang>ch</lang><!-- language: en or ch --><max_thr>40</max_thr><max_obj_thr>1</max_obj_thr><retry_times>5</retry_times><gen_html>0</gen_html><max_out_sync>1000</max_out_sync><pwd_encipher>0</pwd_encipher><col_opt>0</col_opt><log_mode>0</log_mode><stat_flag>0</stat_flag><max_queue>100</max_queue><sort_thr_n>1</sort_thr_n><force_jobname>0</force_jobname><sort_buf_size>1024</sort_buf_size><report_mode>1</report_mode><use_conn_pool>1</use_conn_pool><case_sensitive>1</case_sensitive><max_conn_num>100</max_conn_num><dmhs><!-- dmhs_server for destination --><server_name>10.0.0.22</server_name><port>5345</port><site_id>1</site_id><!-- source dmhs_server siteid  --></dmhs><src><agent_server>10.0.0.21</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oracrm21</db_server><db_port/><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></src><dest><agent_server>10.0.0.22</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oraoa22</db_server><db_port>5236</db_port><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></dest>
</veri>
[oracle@veri1 bin]$

数据对比流程

源端启动代理

[oracle@oradb1 bin]$ ./dmhs_veri_agent_ora  agent.xml
AGENT[INFO]: VERI AGENT start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
AGENT[INFO]: worker thread number: 4, max buf size: 64 MB
AGENT[WARN]: agent.xml configuration item is invalid: group_num(0), using default value : 0
AGENT[INFO]: AGENT 数据接收端线程成功创建,正在监听数据端口: 5347

目标端启动代理

[oracle@oradb2 ~]$ cd /dm8/dmhs/bin
[oracle@oradb2 bin]$ ./dmhs_veri_agent_ora
AGENT[INFO]: VERI AGENT start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
AGENT[INFO]: worker thread number: 4, max buf size: 64 MB
AGENT[WARN]: agent.xml configuration item is invalid: group_num(0), using default value : 0
AGENT[WARN]: 全局日志开关没有打开, 重新打开日志开关
AGENT[INFO]: AGENT 数据接收端线程成功创建,正在监听数据端口: 5347

数据对比操作

数据对比程序启动

[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=NORMAL
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
PUB[WARN]: 环境NLS_LANG未找到,使用默认GBK值:AMERICAN_AMERICA.ZHS16GBK

开始执行数据对比:源端回显

AGENT[INFO]: SESS: 0x7ff438008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7ff438008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438008dd0, AGENT获得对比表:USERCRM.T01
AGENT[UNKNOW]: SESS: 0x7ff438008dd0, 开始获取表数据:USERCRM.T01
AGENT[INFO]: thread id: 140687011419904, SESS:0x7ff438008dd0, table: USERCRM.T01, fetching data...
AGENT[INFO]: SESS: 0x7ff438011600, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438011600, AGENT获得对比表:USERCRM.T02
AGENT[UNKNOW]: SESS: 0x7ff438011600, 开始获取表数据:USERCRM.T02
AGENT[INFO]: thread id: 140686997550848, SESS:0x7ff438011600, table: USERCRM.T02, fetching data...
AGENT[INFO]: SESS: 0x7ff438019e60, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438019e60, AGENT获得对比表:USERCRM.T03
AGENT[UNKNOW]: SESS: 0x7ff438019e60, 开始获取表数据:USERCRM.T03
AGENT[INFO]: thread id: 140686989727488, SESS:0x7ff438019e60, table: USERCRM.T03, fetching data...
AGENT[WARN]: table: USERCRM.T02, fetch data is starting...
AGENT[WARN]: table: USERCRM.T01, fetch data is starting...
AGENT[INFO]: table(1) first pack is sending...
AGENT[WARN]: table: USERCRM.T03, fetch data is starting...
AGENT[INFO]: table(5) first pack is sending...
AGENT[INFO]: table(3) first pack is sending...
AGENT[INFO]: thread id: 140686997550848, SESS:0x7ff438011600, table: USERCRM.T02, end of fetching data. is_opt: 1, used time: 00:00:01.012
AGENT[INFO]: thread id: 140687011419904, SESS:0x7ff438008dd0, table: USERCRM.T01, end of fetching data. is_opt: 1, used time: 00:00:01.027
AGENT[INFO]: SESS: 0x7ff438011600, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7ff438008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: thread id: 140686989727488, SESS:0x7ff438019e60, table: USERCRM.T03, end of fetching data. is_opt: 1, used time: 00:00:01.013
AGENT[INFO]: SESS: 0x7ff438019e60, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7ff438008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7ff438008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7ff438008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438008dd0, AGENT获得对比表:USERCRM.T01
AGENT[UNKNOW]: SESS: 0x7ff438008dd0, 开始获取表数据:USERCRM.T01
AGENT[INFO]: thread id: 140686989727488, SESS:0x7ff438008dd0, table: USERCRM.T01, fetching data...
AGENT[INFO]: SESS: 0x7ff438011600, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7ff438011600, AGENT获得对比表:USERCRM.T02
AGENT[UNKNOW]: SESS: 0x7ff438011600, 开始获取表数据:USERCRM.T02
AGENT[INFO]: thread id: 140687011419904, SESS:0x7ff438011600, table: USERCRM.T02, fetching data...
AGENT[WARN]: table: USERCRM.T01, fetch data is starting...
AGENT[INFO]: SESS: 0x7ff438019e60, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: table(1) first pack is sending...
AGENT[INFO]: SESS: 0x7ff438019e60, AGENT获得对比表:USERCRM.T03
AGENT[UNKNOW]: SESS: 0x7ff438019e60, 开始获取表数据:USERCRM.T03
AGENT[INFO]: thread id: 140686710904576, SESS:0x7ff438019e60, table: USERCRM.T03, fetching data...
AGENT[WARN]: table: USERCRM.T02, fetch data is starting...
AGENT[WARN]: table: USERCRM.T03, fetch data is starting...
AGENT[INFO]: table(5) first pack is sending...
AGENT[INFO]: thread id: 140686989727488, SESS:0x7ff438008dd0, table: USERCRM.T01, end of fetching data. is_opt: 1, used time: 00:00:01.007
AGENT[INFO]: SESS: 0x7ff438008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: table(3) first pack is sending...
AGENT[INFO]: thread id: 140687011419904, SESS:0x7ff438011600, table: USERCRM.T02, end of fetching data. is_opt: 1, used time: 00:00:01.008
AGENT[INFO]: SESS: 0x7ff438011600, 来自10.0.0.100连接断开
AGENT[INFO]: thread id: 140686710904576, SESS:0x7ff438019e60, table: USERCRM.T03, end of fetching data. is_opt: 1, used time: 00:00:01.018
AGENT[INFO]: SESS: 0x7ff438019e60, 来自10.0.0.100连接断开

开始执行数据对比:目标端回显

AGENT[INFO]: SESS: 0x7f970c008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c008dd0, AGENT获得对比表:USERCRM.T01
AGENT[INFO]: SESS: 0x7f970c011600, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[UNKNOW]: SESS: 0x7f970c008dd0, 开始获取表数据:USERCRM.T01
AGENT[INFO]: thread id: 140286788142848, SESS:0x7f970c008dd0, table: USERCRM.T01, fetching data...
AGENT[INFO]: SESS: 0x7f970c011600, AGENT获得对比表:USERCRM.T02
AGENT[UNKNOW]: SESS: 0x7f970c011600, 开始获取表数据:USERCRM.T02
AGENT[INFO]: thread id: 140286713390848, SESS:0x7f970c011600, table: USERCRM.T02, fetching data...
AGENT[INFO]: SESS: 0x7f970c019e50, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c019e50, AGENT获得对比表:USERCRM.T03
AGENT[UNKNOW]: SESS: 0x7f970c019e50, 开始获取表数据:USERCRM.T03
AGENT[INFO]: thread id: 140286700381952, SESS:0x7f970c019e50, table: USERCRM.T03, fetching data...
AGENT[WARN]: table: USERCRM.T02, fetch data is starting...
AGENT[WARN]: table: USERCRM.T01, fetch data is starting...
AGENT[WARN]: table: USERCRM.T03, fetch data is starting...
AGENT[INFO]: table(6) first pack is sending...
AGENT[INFO]: table(2) first pack is sending...
AGENT[INFO]: table(4) first pack is sending...
AGENT[INFO]: thread id: 140286713390848, SESS:0x7f970c011600, table: USERCRM.T02, end of fetching data. is_opt: 1, used time: 00:00:01.120
AGENT[INFO]: thread id: 140286788142848, SESS:0x7f970c008dd0, table: USERCRM.T01, end of fetching data. is_opt: 1, used time: 00:00:01.130
AGENT[INFO]: SESS: 0x7f970c011600, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7f970c008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: thread id: 140286700381952, SESS:0x7f970c019e50, table: USERCRM.T03, end of fetching data. is_opt: 1, used time: 00:00:01.103
AGENT[INFO]: SESS: 0x7f970c019e50, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7f970c008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7f970c008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c008dd0, 来自10.0.0.100连接断开
AGENT[INFO]: SESS: 0x7f970c008dd0, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c008dd0, AGENT获得对比表:USERCRM.T01
AGENT[UNKNOW]: SESS: 0x7f970c008dd0, 开始获取表数据:USERCRM.T01
AGENT[INFO]: thread id: 140286700381952, SESS:0x7f970c008dd0, table: USERCRM.T01, fetching data...
AGENT[INFO]: SESS: 0x7f970c011600, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: SESS: 0x7f970c011600, AGENT获得对比表:USERCRM.T02
AGENT[UNKNOW]: SESS: 0x7f970c011600, 开始获取表数据:USERCRM.T02
AGENT[INFO]: thread id: 140286788142848, SESS:0x7f970c011600, table: USERCRM.T02, fetching data...
AGENT[WARN]: table: USERCRM.T01, fetch data is starting...
AGENT[INFO]: SESS: 0x7f970c019e50, 监听端口收到来自10.0.0.100的连接请求,正在为这个连接创建站点和对应的接收线程...
AGENT[INFO]: table(2) first pack is sending...
AGENT[INFO]: SESS: 0x7f970c019e50, AGENT获得对比表:USERCRM.T03
AGENT[UNKNOW]: SESS: 0x7f970c019e50, 开始获取表数据:USERCRM.T03
AGENT[INFO]: thread id: 140286470620928, SESS:0x7f970c019e50, table: USERCRM.T03, fetching data...
AGENT[WARN]: table: USERCRM.T02, fetch data is starting...
AGENT[WARN]: table: USERCRM.T03, fetch data is starting...
AGENT[INFO]: table(6) first pack is sending...
AGENT[INFO]: table(4) first pack is sending...
AGENT[INFO]: thread id: 140286788142848, SESS:0x7f970c011600, table: USERCRM.T02, end of fetching data. is_opt: 1, used time: 00:00:01.006
AGENT[INFO]: SESS: 0x7f970c011600, 来自10.0.0.100连接断开
AGENT[INFO]: thread id: 140286470620928, SESS:0x7f970c019e50, table: USERCRM.T03, end of fetching data. is_opt: 1, used time: 00:00:01.010
AGENT[INFO]: SESS: 0x7f970c019e50, 来自10.0.0.100连接断开
AGENT[INFO]: thread id: 140286700381952, SESS:0x7f970c008dd0, table: USERCRM.T01, end of fetching data. is_opt: 1, used time: 00:00:02.008
AGENT[INFO]: SESS: 0x7f970c008dd0, 来自10.0.0.100连接断开

执行端回显

[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=NORMAL
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
PUB[WARN]: 环境NLS_LANG未找到,使用默认GBK值:AMERICAN_AMERICA.ZHS16GBK
VERI[INFO]: CONNECT: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
VERI[INFO]: CONNECT: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
MGR[WARN]: License 将在 2022-06-30 过期
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程个数:1
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: 添加 USERCRM.T01 == USERCRM.T01 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)等待对象解析线程完成...
VERI[INFO]: 添加 USERCRM.T02 == USERCRM.T02 到对比队列中
VERI[INFO]: 添加 USERCRM.T03 == USERCRM.T03 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程完成退出.
VERI[INFO]: USERCRM==USERCRM的任务开始
VERI[INFO]: 执行的模式为NORMAL
VERI[INFO]: 源AGENT为10.0.0.21:5347
VERI[INFO]: 目的AGENT为10.0.0.22:5347
VERI[INFO]: 组表对比开始: (1/3 : USERCRM.T01==USERCRM.T01)...
VERI[INFO]: 组表对比开始: (2/3 : USERCRM.T02==USERCRM.T02)...
VERI[INFO]: 组表对比开始: (3/3 : USERCRM.T03==USERCRM.T03)...
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 750)
VERI[INFO]: 表数据排序:(USERCRM.T01)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 500)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 1250)
VERI[INFO]: 表数据排序:(USERCRM.T03)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 250)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 1000)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T02, 4, 0)
VERI[INFO]: 表数据排序:(USERCRM.T02)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T02, 3, 0)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 2000)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 2000)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 1000)
VERI[INFO]: 无主键对比开始: (USERCRM.T02==USERCRM.T02)
VERI[INFO]: (USERCRM.T02==USERCRM.T02) compare over, out_sync: 0, in_sync: 0, used time : 10.802(ms)
VERI[INFO]: 无主键对比开始: (USERCRM.T01==USERCRM.T01)
VERI[INFO]: 无主键对比开始: (USERCRM.T03==USERCRM.T03)
VERI[INFO]: (USERCRM.T01==USERCRM.T01) compare over, out_sync: 0, in_sync: 1000, used time : 104.445(ms)
VERI[INFO]: (USERCRM.T03==USERCRM.T03) compare over, out_sync: 0, in_sync: 2000, used time : 20.716(ms)
VERI[INFO]: 报告文件夹路径        : /dm8/veri_report/USERCRM==USERCRM_20220529_000
VERI[INFO]: 总体报告文件路径      : /dm8/veri_report/USERCRM==USERCRM_20220529_000/veri_report_USERCRM==USERCRM.txt
VERI[INFO]: 退出Verify tool
[oracle@veri1 bin]$
[oracle@veri1 bin]$ 

执行对比的结果

[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat /dm8/veri_report/USERCRM==USERCRM_20220529_000/veri_report_USERCRM==USERCRM.txt
******************************************************DM Verify Data Tool
版本     : V4.2.60-Build(2022.02.24-106302trunc)_D64
执行时间 : 2022-05-29 08:05:08
结束时间 : 2022-05-29 08:05:13
******************************************************
源端比目标端多出的表或视图如下:
目标端比源端多出的表或视图如下:
******************************************************
任务名称           : USERCRM==USERCRM
执行模式           : NORMAL
源AGENT            : 10.0.0.21:5347
源AGENT数据库类型  : ORACLE11g
目的AGENT          : 10.0.0.22:5347
目的AGENT数据库类型: ORACLE11g
******************************************************
注意:在非主键对比情况下,UPDATE会以INSERT和DELETE显示,导致一致与不一致总和大于表总数
总共比较表数: 3[OK] USERCRM.T02 == USERCRM.T02
同步成功     : 0
同步失败     : 0[OK] USERCRM.T01 == USERCRM.T01
同步成功     : 1000
同步失败     : 0[OK] USERCRM.T03 == USERCRM.T03
同步成功     : 2000
同步失败     : 0******************************************************
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$

再一样例

[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat veri.xml <?xml version="1.0" encoding="utf-8"?>
<veri><lang>ch</lang><!-- language: en or ch --><max_thr>40</max_thr><max_obj_thr>1</max_obj_thr><retry_times>5</retry_times><gen_html>0</gen_html><max_out_sync>1000</max_out_sync><pwd_encipher>0</pwd_encipher><col_opt>0</col_opt><log_mode>0</log_mode><stat_flag>0</stat_flag><max_queue>100</max_queue><sort_thr_n>1</sort_thr_n><force_jobname>0</force_jobname><sort_buf_size>1024</sort_buf_size><report_mode>1</report_mode><report_dir>/dm8/veri_report</report_dir><use_conn_pool>1</use_conn_pool><case_sensitive>1</case_sensitive><max_conn_num>100</max_conn_num><dmhs><!-- dmhs_server for destination --><server_name>10.0.0.22</server_name><port>5345</port><site_id>1</site_id><!-- source dmhs_server siteid  --></dmhs><src><agent_server>10.0.0.21</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oracrm21</db_server><db_port/><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></src><dest><agent_server>10.0.0.22</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oraoa22</db_server><db_port>5236</db_port><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></dest>
</veri>
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat veri.xml <?xml version="1.0" encoding="utf-8"?>
<veri><lang>ch</lang><!-- language: en or ch --><max_thr>40</max_thr><max_obj_thr>1</max_obj_thr><retry_times>5</retry_times><gen_html>0</gen_html><max_out_sync>1000</max_out_sync><pwd_encipher>0</pwd_encipher><col_opt>0</col_opt><log_mode>0</log_mode><stat_flag>0</stat_flag><max_queue>100</max_queue><sort_thr_n>1</sort_thr_n><force_jobname>0</force_jobname><sort_buf_size>1024</sort_buf_size><report_mode>1</report_mode><report_dir>/dm8/veri_report</report_dir><use_conn_pool>1</use_conn_pool><case_sensitive>1</case_sensitive><max_conn_num>100</max_conn_num><dmhs><!-- dmhs_server for destination --><server_name>10.0.0.22</server_name><port>5345</port><site_id>1</site_id><!-- source dmhs_server siteid  --></dmhs><src><agent_server>10.0.0.21</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oracrm21</db_server><db_port/><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></src><dest><agent_server>10.0.0.22</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver/><!-- driver name or DSN=XXX --><db_server>oraoa22</db_server><db_port>5236</db_port><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></dest>
</veri>
[oracle@veri1 bin]$

执行

[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=NORMAL
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
PUB[WARN]: 环境NLS_LANG未找到,使用默认GBK值:AMERICAN_AMERICA.ZHS16GBK
VERI[INFO]: CONNECT: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
VERI[INFO]: CONNECT: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
MGR[WARN]: License 将在 2022-06-30 过期
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程个数:1
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: 添加 USERCRM.T01 == USERCRM.T01 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)等待对象解析线程完成...
VERI[INFO]: 添加 USERCRM.T02 == USERCRM.T02 到对比队列中
VERI[INFO]: 添加 USERCRM.T03 == USERCRM.T03 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程完成退出.
VERI[INFO]: USERCRM==USERCRM的任务开始
VERI[INFO]: 执行的模式为NORMAL
VERI[INFO]: 源AGENT为10.0.0.21:5347
VERI[INFO]: 目的AGENT为10.0.0.22:5347
VERI[INFO]: 组表对比开始: (1/3 : USERCRM.T01==USERCRM.T01)...
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 250)
VERI[INFO]: 表数据排序:(USERCRM.T01)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 500)
VERI[INFO]: 组表对比开始: (2/3 : USERCRM.T02==USERCRM.T02)...
VERI[INFO]: 组表对比开始: (3/3 : USERCRM.T03==USERCRM.T03)...
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 1000)
VERI[INFO]: 表数据排序:(USERCRM.T03)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 500)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T02, 3, 0)
VERI[INFO]: 表数据排序:(USERCRM.T02)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T02, 4, 0)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 2000)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 1000)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 1000)
VERI[INFO]: 无主键对比开始: (USERCRM.T02==USERCRM.T02)
VERI[INFO]: (USERCRM.T02==USERCRM.T02) compare over, out_sync: 0, in_sync: 0, used time : 10.788(ms)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 2000)
VERI[INFO]: 无主键对比开始: (USERCRM.T03==USERCRM.T03)
VERI[INFO]: (USERCRM.T03==USERCRM.T03) compare over, out_sync: 0, in_sync: 2000, used time : 15.332(ms)
VERI[INFO]: 无主键对比开始: (USERCRM.T01==USERCRM.T01)
VERI[INFO]: (USERCRM.T01==USERCRM.T01) compare over, out_sync: 0, in_sync: 1000, used time : 14.240(ms)
VERI[INFO]: 报告文件夹路径        : /dm8/veri_report/USERCRM==USERCRM_20220529_001
VERI[INFO]: 总体报告文件路径      : /dm8/veri_report/USERCRM==USERCRM_20220529_001/veri_report_USERCRM==USERCRM.txt
VERI[INFO]: 已经配置gen_html,进行html生成
sh: java: command not found<===没有java程序
VERI[INFO]: 退出Verify tool
[oracle@veri1 bin]$

安装java

[root@veri1 ~]#
[root@veri1 ~]#
[root@veri1 ~]# yum -y list Java*
Loaded plugins: fastestmirror, refresh-packagekit, security
Loading mirror speeds from cached hostfile
Installed Packages
java-1.8.0-openjdk.x86_64                                                     1:1.8.0.91-1.b14.el6                                           @rhel-source
java-1.8.0-openjdk-devel.x86_64                                               1:1.8.0.91-1.b14.el6                                           @rhel-source
java-1.8.0-openjdk-headless.x86_64                                            1:1.8.0.91-1.b14.el6                                           @rhel-source
Available Packages
java-1.5.0-gcj.x86_64                                                         1.5.0.0-29.1.el6                                               rhel-source
java-1.5.0-gcj-devel.x86_64                                                   1.5.0.0-29.1.el6                                               rhel-source
java-1.5.0-gcj-javadoc.x86_64                                                 1.5.0.0-29.1.el6                                               rhel-source
java-1.5.0-gcj-src.x86_64                                                     1.5.0.0-29.1.el6                                               rhel-source
java-1.6.0-openjdk.x86_64                                                     1:1.6.0.38-1.13.10.4.el6                                       rhel-source
java-1.6.0-openjdk-demo.x86_64                                                1:1.6.0.38-1.13.10.4.el6                                       rhel-source
java-1.6.0-openjdk-devel.x86_64                                               1:1.6.0.38-1.13.10.4.el6                                       rhel-source
java-1.6.0-openjdk-javadoc.x86_64                                             1:1.6.0.38-1.13.10.4.el6                                       rhel-source
java-1.6.0-openjdk-src.x86_64                                                 1:1.6.0.38-1.13.10.4.el6                                       rhel-source
java-1.7.0-openjdk.x86_64                                                     1:1.7.0.99-2.6.5.1.el6                                         rhel-source
java-1.7.0-openjdk-demo.x86_64                                                1:1.7.0.99-2.6.5.1.el6                                         rhel-source
java-1.7.0-openjdk-devel.x86_64                                               1:1.7.0.99-2.6.5.1.el6                                         rhel-source
java-1.7.0-openjdk-javadoc.noarch                                             1:1.7.0.99-2.6.5.1.el6                                         rhel-source
java-1.7.0-openjdk-src.x86_64                                                 1:1.7.0.99-2.6.5.1.el6                                         rhel-source
java-1.8.0-openjdk-debug.x86_64                                               1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-demo.x86_64                                                1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-demo-debug.x86_64                                          1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-devel-debug.x86_64                                         1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-headless-debug.x86_64                                      1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-javadoc.noarch                                             1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-javadoc-debug.noarch                                       1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-src.x86_64                                                 1:1.8.0.91-1.b14.el6                                           rhel-source
java-1.8.0-openjdk-src-debug.x86_64                                           1:1.8.0.91-1.b14.el6                                           rhel-source
java_cup.x86_64                                                               1:0.10k-5.el6                                                  rhel-source
java_cup-javadoc.x86_64                                                       1:0.10k-5.el6                                                  rhel-source
java_cup-manual.x86_64                                                        1:0.10k-5.el6                                                  rhel-source
javacc.x86_64                                                                 4.1-0.5.el6                                                    rhel-source
javacc-demo.x86_64                                                            4.1-0.5.el6                                                    rhel-source
javacc-manual.x86_64                                                          4.1-0.5.el6                                                    rhel-source
javassist.noarch                                                              3.9.0-6.el6                                                    rhel-source
javassist-javadoc.noarch                                                      3.9.0-6.el6                                                    rhel-source
[root@veri1 ~]#
[root@veri1 ~]# yum install -y java-1.8.0-openjdk-devel.x86_64
Loaded plugins: fastestmirror, refresh-packagekit, security
Setting up Install Process
Loading mirror speeds from cached hostfile
Resolving Dependencies
--> Running transaction check
---> Package java-1.8.0-openjdk-devel.x86_64 1:1.8.0.91-1.b14.el6 will be installed
--> Processing Dependency: java-1.8.0-openjdk = 1:1.8.0.91-1.b14.el6 for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libawt_xawt.so(SUNWprivate_1.1)(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libjvm.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libjava.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libawt_xawt.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libawt.so()(64bit) for package: 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64
--> Running transaction check
---> Package java-1.8.0-openjdk.x86_64 1:1.8.0.91-1.b14.el6 will be installed
--> Processing Dependency: xorg-x11-fonts-Type1 for package: 1:java-1.8.0-openjdk-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: libgif.so.4()(64bit) for package: 1:java-1.8.0-openjdk-1.8.0.91-1.b14.el6.x86_64
---> Package java-1.8.0-openjdk-headless.x86_64 1:1.8.0.91-1.b14.el6 will be installed
--> Processing Dependency: tzdata-java >= 2014f-1 for package: 1:java-1.8.0-openjdk-headless-1.8.0.91-1.b14.el6.x86_64
--> Processing Dependency: jpackage-utils for package: 1:java-1.8.0-openjdk-headless-1.8.0.91-1.b14.el6.x86_64
--> Running transaction check
---> Package giflib.x86_64 0:4.1.6-3.1.el6 will be installed
---> Package jpackage-utils.noarch 0:1.7.5-3.16.el6 will be installed
---> Package tzdata-java.noarch 0:2016c-1.el6 will be installed
---> Package xorg-x11-fonts-Type1.noarch 0:7.2-11.el6 will be installed
--> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.2-11.el6.noarch
--> Processing Dependency: ttmkfdir for package: xorg-x11-fonts-Type1-7.2-11.el6.noarch
--> Running transaction check
---> Package ttmkfdir.x86_64 0:3.0.9-32.1.el6 will be installed
--> Finished Dependency ResolutionDependencies Resolved=========================================================================================================================================================Package                                        Arch                      Version                                   Repository                      Size
=========================================================================================================================================================
Installing:java-1.8.0-openjdk-devel                       x86_64                    1:1.8.0.91-1.b14.el6                      rhel-source                     10 M
Installing for dependencies:giflib                                         x86_64                    4.1.6-3.1.el6                             rhel-source                     37 kjava-1.8.0-openjdk                             x86_64                    1:1.8.0.91-1.b14.el6                      rhel-source                    195 kjava-1.8.0-openjdk-headless                    x86_64                    1:1.8.0.91-1.b14.el6                      rhel-source                     32 Mjpackage-utils                                 noarch                    1.7.5-3.16.el6                            rhel-source                     60 kttmkfdir                                       x86_64                    3.0.9-32.1.el6                            rhel-source                     43 ktzdata-java                                    noarch                    2016c-1.el6                               rhel-source                    179 kxorg-x11-fonts-Type1                           noarch                    7.2-11.el6                                rhel-source                    520 kTransaction Summary
=========================================================================================================================================================
Install       8 Package(s)Total download size: 43 M
Installed size: 144 M
Downloading Packages:
---------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                     28 MB/s |  43 MB     00:01
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running TransactionInstalling : jpackage-utils-1.7.5-3.16.el6.noarch                                                                                                  1/8 Installing : giflib-4.1.6-3.1.el6.x86_64                                                                                                           2/8 Installing : tzdata-java-2016c-1.el6.noarch                                                                                                        3/8 Installing : ttmkfdir-3.0.9-32.1.el6.x86_64                                                                                                        4/8 Installing : xorg-x11-fonts-Type1-7.2-11.el6.noarch                                                                                                5/8 Installing : 1:java-1.8.0-openjdk-headless-1.8.0.91-1.b14.el6.x86_64                                                                               6/8 Installing : 1:java-1.8.0-openjdk-1.8.0.91-1.b14.el6.x86_64                                                                                        7/8 Installing : 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64                                                                                  8/8 Verifying  : 1:java-1.8.0-openjdk-devel-1.8.0.91-1.b14.el6.x86_64                                                                                  1/8 Verifying  : ttmkfdir-3.0.9-32.1.el6.x86_64                                                                                                        2/8 Verifying  : tzdata-java-2016c-1.el6.noarch                                                                                                        3/8 Verifying  : 1:java-1.8.0-openjdk-headless-1.8.0.91-1.b14.el6.x86_64                                                                               4/8 Verifying  : xorg-x11-fonts-Type1-7.2-11.el6.noarch                                                                                                5/8 Verifying  : 1:java-1.8.0-openjdk-1.8.0.91-1.b14.el6.x86_64                                                                                        6/8 Verifying  : giflib-4.1.6-3.1.el6.x86_64                                                                                                           7/8 Verifying  : jpackage-utils-1.7.5-3.16.el6.noarch                                                                                                  8/8 Installed:java-1.8.0-openjdk-devel.x86_64 1:1.8.0.91-1.b14.el6                                                                                                   Dependency Installed:giflib.x86_64 0:4.1.6-3.1.el6              java-1.8.0-openjdk.x86_64 1:1.8.0.91-1.b14.el6   java-1.8.0-openjdk-headless.x86_64 1:1.8.0.91-1.b14.el6  jpackage-utils.noarch 0:1.7.5-3.16.el6     ttmkfdir.x86_64 0:3.0.9-32.1.el6                 tzdata-java.noarch 0:2016c-1.el6                         xorg-x11-fonts-Type1.noarch 0:7.2-11.el6  Complete!
[root@veri1 ~]#

java程序可以用了


[oracle@veri1 bin]$
[oracle@veri1 bin]$ java -version
openjdk version "1.8.0_91"
OpenJDK Runtime Environment (build 1.8.0_91-b14)
OpenJDK 64-Bit Server VM (build 25.91-b14, mixed mode)
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$

改报其他错误了


[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=NORMAL
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
PUB[WARN]: 环境NLS_LANG未找到,使用默认GBK值:AMERICAN_AMERICA.ZHS16GBK
VERI[INFO]: CONNECT: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
VERI[INFO]: CONNECT: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
MGR[WARN]: License 将在 2022-06-30 过期
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程个数:1
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: 添加 USERCRM.T01 == USERCRM.T01 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)等待对象解析线程完成...
VERI[INFO]: 添加 USERCRM.T02 == USERCRM.T02 到对比队列中
VERI[INFO]: 添加 USERCRM.T03 == USERCRM.T03 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程完成退出.
VERI[INFO]: USERCRM==USERCRM的任务开始
VERI[INFO]: 执行的模式为NORMAL
VERI[INFO]: 源AGENT为10.0.0.21:5347
VERI[INFO]: 目的AGENT为10.0.0.22:5347
VERI[INFO]: 组表对比开始: (1/3 : USERCRM.T01==USERCRM.T01)...
VERI[INFO]: 组表对比开始: (2/3 : USERCRM.T02==USERCRM.T02)...
VERI[INFO]: 组表对比开始: (3/3 : USERCRM.T03==USERCRM.T03)...
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 500)
VERI[INFO]: 表数据排序:(USERCRM.T01)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 1000)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 1250)
VERI[INFO]: 表数据排序:(USERCRM.T03)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 750)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T01, 1, 1000)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T02, 3, 0)
VERI[INFO]: 表数据排序:(USERCRM.T02)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T01, 2, 1000)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T02, 4, 0)
VERI[INFO]: VERI接收到目的AGENT数据包(USERCRM.T03, 6, 2000)
VERI[INFO]: VERI接收到源端AGENT数据包(USERCRM.T03, 5, 2000)
VERI[INFO]: 无主键对比开始: (USERCRM.T02==USERCRM.T02)
VERI[INFO]: (USERCRM.T02==USERCRM.T02) compare over, out_sync: 0, in_sync: 0, used time : 10.594(ms)
VERI[INFO]: 无主键对比开始: (USERCRM.T01==USERCRM.T01)
VERI[INFO]: (USERCRM.T01==USERCRM.T01) compare over, out_sync: 0, in_sync: 1000, used time : 14.671(ms)
VERI[INFO]: 无主键对比开始: (USERCRM.T03==USERCRM.T03)
VERI[INFO]: (USERCRM.T03==USERCRM.T03) compare over, out_sync: 0, in_sync: 2000, used time : 15.633(ms)
VERI[INFO]: 报告文件夹路径        : /dm8/veri_report/USERCRM==USERCRM_20220529_002
VERI[INFO]: 总体报告文件路径      : /dm8/veri_report/USERCRM==USERCRM_20220529_002/veri_report_USERCRM==USERCRM.txt
VERI[INFO]: 已经配置gen_html,进行html生成
Error: Could not find or load main class txt2html.Txt2Html
VERI[INFO]: 退出Verify tool
[oracle@veri1 bin]$

mode=FAST方式执行对比

执行

[oracle@veri1 bin]$
[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=FAST
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
VERI[INFO]: CONNECT: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
VERI[INFO]: CONNECT: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;PWD=******;
MGR[WARN]: License 将在 2022-06-30 过期
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程个数:1
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER={Oracle in OraDb11g_home1};UID=system;
VERI[INFO]: 添加 USERCRM.T01 == USERCRM.T01 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)等待对象解析线程完成...
VERI[INFO]: 添加 USERCRM.T02 == USERCRM.T02 到对比队列中
VERI[INFO]: 添加 USERCRM.T03 == USERCRM.T03 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程完成退出.
VERI[INFO]: USERCRM==USERCRM的任务开始
VERI[INFO]: 执行的模式为FAST
VERI[INFO]: 源AGENT为10.0.0.21:5347
VERI[INFO]: 目的AGENT为10.0.0.22:5347
VERI[INFO]: 组表对比开始: (1/3 : USERCRM.T01==USERCRM.T01)...
VERI[INFO]: 源表USERCRM.T01的记录数4000
VERI[INFO]: 目的表USERCRM.T01的记录数4000
VERI[INFO]: 组表对比开始: (2/3 : USERCRM.T02==USERCRM.T02)...
VERI[INFO]: 源表USERCRM.T02的记录数10000
VERI[INFO]: 目的表USERCRM.T02的记录数10000
VERI[INFO]: 组表对比开始: (3/3 : USERCRM.T03==USERCRM.T03)...
VERI[INFO]: 源表USERCRM.T03的记录数2000
VERI[INFO]: 目的表USERCRM.T03的记录数2000
VERI[INFO]: 报告文件夹路径        : /dm8/veri_report/USERCRM==USERCRM_20220529_006
VERI[INFO]: 总体报告文件路径      : /dm8/veri_report/USERCRM==USERCRM_20220529_006/veri_report_USERCRM==USERCRM.txt
VERI[INFO]: 已经配置gen_html,进行html生成
Error: Could not find or load main class txt2html.Txt2Html
VERI[INFO]: 退出Verify tool
[oracle@veri1 bin]$

数据对比报告

[oracle@veri1 ~]$
[oracle@veri1 ~]$ cat /dm8/veri_report/USERCRM==USERCRM_20220529_006/veri_report_USERCRM==USERCRM.txt
******************************************************DM Verify Data Tool
版本     : V4.2.60-Build(2022.02.24-106302trunc)_D64
执行时间 : 2022-05-29 15:57:57
结束时间 : 2022-05-29 15:57:59
******************************************************
源端比目标端多出的表或视图如下:
目标端比源端多出的表或视图如下:
******************************************************
任务名称           : USERCRM==USERCRM
执行模式           : FAST
源AGENT            : 10.0.0.21:5347
源AGENT数据库类型  : ORACLE11g
目的AGENT          : 10.0.0.22:5347
目的AGENT数据库类型: ORACLE11g
******************************************************
注意:在非主键对比情况下,UPDATE会以INSERT和DELETE显示,导致一致与不一致总和大于表总数
总共比较表数: 3[1] OK. 源表和目的表记录数相同(USERCRM.T01, USERCRM.T01)        : 4000
[2] OK. 源表和目的表记录数相同(USERCRM.T02, USERCRM.T02)        : 10000
[3] OK. 源表和目的表记录数相同(USERCRM.T03, USERCRM.T03)        : 2000
******************************************************
[oracle@veri1 ~]$

odbc故障

如果不想用默认的“Oracle in OraDb11g_home1”
现在修改为“Oracle in OraDb11g_home2

[oracle@veri1 bin]$
[oracle@veri1 bin]$ /dm8/dmhs/odbc/bin/odbcinst -j
unixODBC 2.3.2
DRIVERS............: /dm8/dmhs/odbc/etc/odbcinst.ini
SYSTEM DATA SOURCES: /dm8/dmhs/odbc/etc/odbc.ini
FILE DATA SOURCES..: /dm8/dmhs/odbc/etc/ODBCDataSources
USER DATA SOURCES..: /home/oracle/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat /dm8/dmhs/odbc/etc/odbcinst.ini
[Oracle in OraDb11g_home2]
Description=ODBC DRIVER FOR ORACLE
Driver=/u01/app/oracle/product/11.2.0/dbhome_1/lib/libsqora.so.11.1
Threading=0[Oracle 11g ODBC driver]
Description=Oracle ODBC driver for Oracle 11g
Driver=/u01/app/oracle/product/11.2.0/dbhome_1/lib/libsqora.so.11.1
[oracle@veri1 bin]$

那么veri.xml 也要修改

[oracle@veri1 bin]$
[oracle@veri1 bin]$
[oracle@veri1 bin]$ cat veri.xml<?xml version="1.0" encoding="utf-8"?>
<veri><lang>ch</lang><!-- language: en or ch --><max_thr>40</max_thr><max_obj_thr>1</max_obj_thr><retry_times>5</retry_times><gen_html>1</gen_html><max_out_sync>1000</max_out_sync><pwd_encipher>0</pwd_encipher><col_opt>0</col_opt><log_mode>0</log_mode><stat_flag>0</stat_flag><max_queue>100</max_queue><sort_thr_n>1</sort_thr_n><force_jobname>0</force_jobname><sort_buf_size>1024</sort_buf_size><report_mode>1</report_mode><report_dir>/dm8/veri_report</report_dir><use_conn_pool>1</use_conn_pool><case_sensitive>1</case_sensitive><max_conn_num>100</max_conn_num><dmhs><!-- dmhs_server for destination --><server_name>10.0.0.22</server_name><port>5345</port><site_id>1</site_id><!-- source dmhs_server siteid  --></dmhs><src><agent_server>10.0.0.21</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver>Oracle in OraDb11g_home2</driver><!-- driver name or DSN=XXX --><db_server>oracrm21</db_server><db_port/><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></src><dest><agent_server>10.0.0.22</agent_server><port>5347</port><db_type>ORACLE11g</db_type><trim_space>0</trim_space><not_cvt_date>0</not_cvt_date><odbc_str><driver>Oracle in OraDb11g_home2</driver><!-- driver name or DSN=XXX --><db_server>oraoa22</db_server><db_port>5236</db_port><db_user>system</db_user><db_pwd>abcd1234</db_pwd><db_name/><db_ssl_path/><db_ssl_pwd/></odbc_str></dest>
</veri>
[oracle@veri1 bin]$

启动

[oracle@veri1 bin]$
[oracle@veri1 bin]$ ./dmhs_veri conf=veri.xml "table=(USERCRM.*==USERCRM.*)" mode=FAST
VERI[INFO]: VERI start up, current version: V4.2.60-Build(2022.02.24-106302trunc)_D64
VERI[INFO]: CONNECT: DBQ=oracrm21;DRIVER=Oracle in OraDb11g_home12;UID=system;PWD=******;
VERI[INFO]: CONNECT: DBQ=oraoa22;DRIVER=Oracle in OraDb11g_home12;UID=system;PWD=******;
MGR[WARN]: License 将在 2022-06-30 过期
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER=Oracle in OraDb11g_home12;UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER=Oracle in OraDb11g_home12;UID=system;
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程个数:1
VERI[INFO]: veri odbc connect str: DBQ=oracrm21;DRIVER=Oracle in OraDb11g_home12;UID=system;
VERI[INFO]: veri odbc connect str: DBQ=oraoa22;DRIVER=Oracle in OraDb11g_home12;UID=system;
VERI[INFO]: 添加 USERCRM.T01 == USERCRM.T01 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)等待对象解析线程完成...
VERI[INFO]: 添加 USERCRM.T02 == USERCRM.T02 到对比队列中
VERI[INFO]: 添加 USERCRM.T03 == USERCRM.T03 到对比队列中
VERI[INFO]: (USERCRM.*==USERCRM.*)对象解析线程完成退出.
VERI[INFO]: USERCRM==USERCRM的任务开始
VERI[INFO]: 执行的模式为FAST
VERI[INFO]: 源AGENT为10.0.0.21:5347
VERI[INFO]: 目的AGENT为10.0.0.22:5347
VERI[INFO]: 组表对比开始: (1/3 : USERCRM.T01==USERCRM.T01)...
VERI[INFO]: 源表USERCRM.T01的记录数4000
VERI[INFO]: 目的表USERCRM.T01的记录数4000
VERI[INFO]: 组表对比开始: (2/3 : USERCRM.T02==USERCRM.T02)...
VERI[INFO]: 源表USERCRM.T02的记录数10000
VERI[INFO]: 目的表USERCRM.T02的记录数10000
VERI[INFO]: 组表对比开始: (3/3 : USERCRM.T03==USERCRM.T03)...
VERI[INFO]: 源表USERCRM.T03的记录数2000
VERI[INFO]: 目的表USERCRM.T03的记录数2000
VERI[INFO]: 报告文件夹路径        : /dm8/veri_report/USERCRM==USERCRM_20220529_009
VERI[INFO]: 总体报告文件路径      : /dm8/veri_report/USERCRM==USERCRM_20220529_009/veri_report_USERCRM==USERCRM.txt
VERI[INFO]: 已经配置gen_html,进行html生成
Error: Could not find or load main class txt2html.Txt2Html
VERI[INFO]: 退出Verify tool
[oracle@veri1 bin]$
[oracle@veri1 bin]$

达梦在线服务平台:https://eco.dameng.com

达梦数据对比工具VERI对oracle11gR2与oracle11gR2的实时同步后对比验证测试相关推荐

  1. 达梦数据库--管理工具,数据迁移工具使用

    国产话达梦数据库,常用工具:达梦管理工具,达梦数据迁移工具. 1.达梦管理工具主要类似于navicat,是数据库可视化工具,新建连接输入IP,端口,账号,密码即可连接数据库. 之后在模式中,可以查看该 ...

  2. 手把手教你达梦数据实时同步软件 (DMHS)的安装和使用(附实战详细记录:本地模拟实现达梦数据库双活、灾备)

    系列文章目录 文章目录 系列文章目录 前言 环境 一.DMHS的安装 (命令行) 1.安装文件准备 2.修改可执行文件后执行安装程序 二.DM8数据库准备工作 1.开启归档日志 2.开启逻辑日志 3. ...

  3. 达梦DM ETL工具搭建与使用

    1.概述 达梦数据交换平台(简称DMETL)是在总结了众多大数据项目经验和需求并结合最新的大数据发展趋势的基础上研发的具有自主版权的数据处理与集成平台.达梦数据交换平台创新地将传统的ETL工具(Ext ...

  4. 达梦数据迁移工具的使用

    作为国产数据库,达梦是比较典型的一种,开发工作中会用到其他数据库表迁移到达梦数据库的问题,在此记录一下迁移方法也为他人提供方便. 该工具仅用于其他数据库表及文本文件迁移达梦,或达梦数据库表迁移到其他数 ...

  5. 达梦数据交换平台软件DMETL部署

    一.DMETL介绍 达梦数据交换平台(简称DMETL)是在总结了众多大数据项目经验和需求并结合最新大数据发展趋势和技术的基础上,自主研发的通用的大数据处理与集成平台. DMETL创新地将传统的ETL工 ...

  6. 达梦迁移oracle,达梦数据迁移工具的使用

    作为国产数据库,达梦是比较典型的一种,开发工作中会用到其他数据库表迁移到达梦数据库的问题,在此记录一下迁移方法也为他人提供方便. 该工具仅用于其他数据库表及文本文件迁移达梦,或达梦数据库表迁移到其他数 ...

  7. 【与达梦同行】达梦数据库主备集群搭建

    达梦数据库主备集群----高性能模式-搭建 文章连接:https://eco.dameng.com/community/post/20221213145437YQ30VJ0HDLCFUV2UMW 环境 ...

  8. 安超云生态 | 安超云与达梦数据完成产品兼容互认证 加速信息技术生态建设

    日前,安超云与武汉达梦数据库股份有限公司(简称"达梦数据")完成产品兼容性互认证明.经安超云与达梦数据联合测试得出:安超云操作系统与达梦数据库管理系统V8,相互兼容,系统功能运动稳 ...

  9. 达梦数据实时同步(DMHS)原理

    1 系统介绍 达梦数据实时同步软件(DMHS)是一个支持异构环境的高性能.高可靠.高可扩展是数据库实时同步复制系统.该系统基于成熟的关系数据库模型和标准接口,跨越多种软硬件平台实现秒级数据实时同步,可 ...

最新文章

  1. 【转】【WPF】WPF样式(Style)—触发器
  2. 融合升级谋定功能性-农业大健康·林裕豪:哲商对话从玉农业
  3. Spring-Aop-XML实现
  4. 厉害的壁纸,亲测有效
  5. Chrome 控制台的console用法收集
  6. Maximo中调用XFire客户端的实现—Weblogic中间件
  7. java 正则 关键字_正则表达式关键字
  8. android xml 焦点,android TV 焦点选中放大效果
  9. property内存管理策略
  10. 【OCM】Oracle OCM11g考场合影~keep人生中重要时刻
  11. Atitit.每周末总结 于每周一计划日程表 流程表 v8 Ver history V8 add stock chk -------------import Stock chk.. 上周遗漏日
  12. CMake 简单入门
  13. 用HTML+CSS做员工信息登记表
  14. ADS1115使用之电路与程序
  15. Redis和MongoDB的区别(面试受用)
  16. python pip 的安装、更新、卸载、降级、和使用 pip 管理包
  17. 长安链ChainMaker基于公钥用户标识的身份模式介绍
  18. mysql定时任务自动备份
  19. 浏览器是如何验证HTTPS证书合法性的?
  20. Shark007 Advanced Codecs 11.8.5版本更新

热门文章

  1. C::求一元二次方程的根
  2. ping命令 网络抓包 分析
  3. android+播放器+螺旋效果,螺旋丸特效相机(抖音螺旋丸特效)V2.3.0.3 安卓版
  4. 大数据数据科学家常用面试题_想要成为数据科学家,解决数据科学面试的简单指南...
  5. 云服务器怎么设置连接同步,奥维地图云服务器同步操作说明
  6. 行星图(planet map)
  7. Numpy更新到1.16.2报错
  8. 用文件记录游戏最高分【C语言】
  9. 微信扫描二维码在内置浏览器打不开文件的下载链接怎么办
  10. 判定是否互为字符重排(入门算法30)