一、前言:操作演示案例为单机安装有DM8 ,Oracle 11.2;Oracle安装完成,可正常启动。
二、安装ODBC
2.1 安装版本为unixODBC-2.3.11下载连接:unixODBC
2.2 解压unixODBC-2.3.11.tar.gz后,安装:
[root@aws unixODBC-2.3.11]# ./configure --prefix=/usr/local/unixODBC-2.3.11 --includedir=/usr/include --libdir=/usr/lib --bindir=/usr/bin --sysconfdir=/etc
[root@aws unixODBC-2.3.11]# make && make install
2.3 配置ODBC
[oracle@aws admin]$ cat /etc/odbc.ini
[DM8]
Driver = DM8 ODBC DRIVER
Description = DM8 ODBC DSN
SERVER = 127.0.0.1
UID = SYSDBA
PWD = SYSDBA
TCP_PORT = 5237
[oracle@aws admin]$ cat /etc/odbcinst.ini
# Example driver definitions
# Driver from the postgresql-odbc package
# Setup from the unixODBC package
[DM8 ODBC DRIVER]
Description = ODBC for DM8
Driver = /dm8/dmdbms/bin/libdodbc.so
2.4 测试连接:
isql -v dm8
三、配置透明网关initDMLINK.ora
设置参数HS_FDS_TRACE_LEVEL = debug,以便调试定位问题
HS_FDS_CONNECT_INFO = DM8
HS_FDS_TRACE_LEVEL = debug
HS_FDS_SHAREABLE_NAME = /usr/lib64/libodbc.so
HS_LANGUAGE = American_America.ZHS16GBK
HS_NLS_NCHAR=UCS2
set ODBCINI=/etc/odbc.ini
四、配置监听服务和网络服务名
监听服务listener.ora:
[oracle@aws admin]$ cat listener.ora
# listener.ora Network Configuration File: /u01/app/oracle/product/11.2.0/network/admin/listener.ora
# Generated by Oracle configuration tools.
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
(PROGRAM = dg4odbc)
(SID_NAME = DMLINK) # DSN
(ORACLE_HOME=/u01/app/oracle/product/11.2.0)
)
)
ADR_BASE_LISTENER = /u01/app/oracle
#PROGRAM=dg4odbc这里dg4odbc是不可以修改的,不要修改成sid,这里会执行$ORACLE_HOME/bin下面的一个名字是dg4odbc的文件,dg4odbc是Oracle了解异库的一种协议;
网络服务名tnsnames.ora:
[oracle@aws admin]$ cat tnsnames.ora
# tnsnames.ora Network Configuration File: /u01/app/oracle/product/11.2.0/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
dm8link =
(DESCRIPTION =
(ADDRESS = (PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))
(CONNECT_DATA = (SERVICE_NAME = DMLINK))
(HS = ok)
)
测试网络服务配置:
五、测试网络链接
lsnrctl reload ; lsnrctl status
六、创建dblink到DM数据库,并依据hs/log下的日志调试:
CREATE DATABASE LINK ORA2DM CONNECT TO "SYSDBA" IDENTIFIED BY "SYSDBA" USING 'dm8link';
Oracle安装路径下hs/log,查看日志,定位问题:
调试后,可以正常使用DBLINK
结论:Oracle-DM数据库的dblink成功建立,可以正常使用。
以上是本次分享的所有内容,如有错漏,欢迎指正。
每天持续进步一点点。
访问达梦技术社区,获取更多内容,网站地址:https://eco.dameng.com