1、安装DM7的odbc驱动包软件(即动态库文件)
在Oracle服务器安装DM数据库或上传达梦安装后的bin目录到Oracle服务器,bin目录里存放着达梦库的动态库文件。
我本地ORACLE服务器的达梦动态文件路径是:/home/dmdata/bin
2、oracle服务器配置达梦unixODBC数据源
vi /usr/local/etc/odbcinst.ini //配置odbc驱动路径
#添加以下内容(使用root)
[DM7]
description = dm odbc dsn
driver = /home/dmdata/bin/libdodbc.so
Setup = /lib/libdmOdbcSetup.so
threading = 0
vi /etc/odbc.ini //配置odbc数据源
#添加以下内容(使用root)
[DMDBLINK]
Description = DM ODBC DSN
Driver = DM7
SERVER = 192.1.1.10 #远程DM数据库IP
UID = TEST #远程DM数据库用户名
PWD = TEST #远程DM数据库用户密码
TCP_PORT = 5236
3、测试数据库是否能用
--测试数据库连接
isql -v DMDBLINK
4、添加tnsname
vi $ORACLE_HOME/network/admin/tnsnames.ora
添加以下内容:
DMDBLINK=
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = ORACLE节点IP)(PORT = ORACLE节点端口))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SID = DMDBLINK)
)
(HS = OK)
)
测试tnsname是否可用
tnsping DMDBLINK 正常
5、监听DMDBLINK
vi $ORACLE_HOME/network/admin/listener.ora
#添加以下内容
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = DMDBLINK )
(ORACLE_HOME =/home/oracle/database/product/11.2.0/db_1) (ENVS=LD_LIBRARY_PATH=/home/oracle/database/product/11.2.0/db_1/lib:/home/dmdata/bin)
(PROGRAM = dg4odbc)--dg4odbc是Oracle了解异库的一种协议
)
)
重启监听
lsnrctl stop //停止监听
lsnrctl start //启动监听
lsnrctl status //查看监听状态
除本机Oracle实例外还应该有DMDBLINK被监听,status 为unknown。
6、配置init$SID.ora文件
cd $ORACLE_HOME/hs/admin
vi initDMDBLINK.ora
#添加以下内容
HS_FDS_CONNECT_INFO = DMDBLINK //unixODBC数据源名称
HS_FDS_TRACE_LEVEL = OFF //debug等级,OFF为关闭
HS_FDS_SHAREABLE_NAME = /usr/lib64/libodbc.so //unixODBC驱动
HS_LANGUAGE = American_America.ZHS16GBK //ORACLE数据库字符集
set ODBCINI= /etc/odbc.ini //unixODBC数据源配置文件
7、在ORACLE中创建并使用DBLINK
--创建dblink
CREATE DATABASE LINK TEST CONNECT TO “TEST” IDENTIFIED BY “TEST” USING ‘DMDBLINK’;
--ORACLE测试连接达梦
SELECT * FROM V$VERSION@TEST ;--查询DM库的V$VERSION视图,查询成功为搭建成功成功