dcp我们学习了dblink,配置过从dm-dm和dm-oracle的dblink,扩展学习,参考达梦的官方文档,我们来测试一下oracle-dm的dbkink。
oracle通过dblink访问达梦数据库,首先需要在oracle上安装达梦客户端:
一、环境介绍
操作系统:centos7、redhat7 (其他系统版本需要在达梦官网下载对应版本的客户端安装包)
客户端安装包:dm8_20220701_x86_rh6_64_ent_8.1.2.128.iso
二、安装dm客户端:
mkdir /dm
mount -o loop /opt/dm8_20220701_x86_rh6_64_ent_8.1.2.128.iso /dm
cd /dm
./DMInstall.bin -i
2.2选择安装语言
根据系统配置选择相应语言,输入选项,回车进行下一步。如下所示:
请选择安装语言(C/c:中文 E/e:英文) [C/c]:C
解压安装程序..........
欢迎使用达梦数据库安装程序
2.3验证 key 文件
可以选择是否输入 Key 文件路径。不输入则进入下一步安装,输入 Key 文件路径,安装程序将显示 Key 文件的详细信息,如果是合法的 Key 文件且在有效期内,可以继续安装。如下所示:
是否输入Key文件路径? (Y/y:是 N/n:否) [Y/y]:N
2.4输入时区
可以选择的时区信息。如下所示:
是否设置时区? (Y/y:是 N/n:否) [Y/y]:Y
设置时区:
[ 1]: GTM-12=日界线西
..........
[21]: GTM+08=中国标准时间
..........
请选择设置时区 [21]:21
2.5选择安装类型
数据库软件安装程序提供四种安装方式:“典型安装”、“服务器安装”、“客户端安装”和“自定义安装”,用户可根据实际情况灵活地选择。如下所示:
典型安装包括:服务器、客户端、驱动、用户手册、数据库服务。
服务器安装包括:服务器、驱动、用户手册、数据库服务。
客户端安装包括:客户端、驱动、用户手册。
自定义安装包括:用户根据需求勾选组件,可以是服务器、客户端、驱动、用户手册、数据库服务中的任意组合。
生产环境可以根据实际需求选择,一般情况下选择"典型安装"即可。
安装类型:
1 典型安装
2 服务器
3 客户端
4 自定义
请选择安装类型的数字序号 [3 客户端]:3
所需空间: 1010M
2.6选择安装路径
输入数据库软件的安装路径,不输入则使用默认路径,默认路径为 $HOME/dmdbms (如果安装用户为 root ,则默认安装路径为 /opt/dmdbms ,但不建议使用 root 系统用户来安装)。如下所示:
请选择安装目录 [opt/dmdbms]:/opt/dmdbms
可用空间: 11G
注意
安装路径里的目录名由英文字母、数字和下划线等组成,不建议使用包含空格和中文字符等的路径。
三、配置环境变量
vi /etc/profile
PATH=$PATH:$HOME/bin
export PATH
export PATH="/opt/dmdbms/bin:$PATH"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/dmdbms/bin"
export DM_HOME="/opt/dmdbms"
source /etc/profile
四、Linux系统调用ODBC驱动,前提条件操作系统安装unixODBC环境:
安装
yum install -y unixODBC.x86_64 unixODBC-devel.x86_64
$ odbcinst -j
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/oracle/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8
五、我们配置的达梦是集群的,所以需要配置集群服务名的方式访问:
vi /etc/dm_svc.conf
TIME_ZONE=(480)
LANGUAGE=(cn)
DMDB03=(10.128.75.33:5236,10.129.75.33:5236)
[DMDB03]
LOGIN_MODE=(1)
SWITCH_TIME=(300)
SWITCH_INTERVAL=(200)
给777权限
chmod 777 /etc/dm_svc.conf
六、配置DM ODBC:
在/etc/odbcinst.ini中增加如下内容:
[DM8 ODBC DRIVER]
Description=ODBC DRIVER FOR DM8
Driver=/opt/dmdbms/bin/libdodbc.so
在/etc/odbc.ini中增加如下内容:(此处的ip端口用户密码根据实际情况填写,生产为集群模式,此处我们也配成集群的访问方式,SERVER写集群服务名,与dm_svc.conf保持一致)
[DMDB03]
Ddscription=DM ODBC DNS
DRIVER = DM8 ODBC DRIVER
SERVER = DMDB03
UID = qs
PWD = pw123456dm
TCP_PORT = 5236
验证是否配置成功:
isql DMDB03 -v
七、修改tnsnames.ora
#注SERVICE_NAME与odbc中odbc.ini里配置的连接名保持一致,HOST记得改成oracle本机的ip!
vi $ORACLE_HOME/network/admin/tnsnames.ora
DMDB03=
(DESCRIPTION=
(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST=10.128.240.135)(PORT = 1521)))
(CONNECT_DATA =(SERVICE_NAME = DMDB03))
(HS=OK)
)
八、修改listener.ora,在SID_LIST下添加,确认下ORACLE_HOME的内容!
#注 SID_NAME与odbc中odbc.ini里配置的连接名保持一致
vi $ORACLE_HOME/network/admin/listener.ora
SID_LIST_LISTENER =
(SID_LIST=
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /oracle/app/product/19c/db_1)
(SID_NAME=orcl)
)
(SID_DESC=
(SID_NAME=DMDB03)
(ORACLE_HOME=/oracle/app/product/19c/db_1)
(PROGRAM=dg4odbc)
(ENVS=LD_LIBRARY_PATH=/opt/dmdbms/bin:/oracle/app/product/19c/db_1/lib)
)
)
九、配置hs
cd $ORACLE_HOME/hs/admin
#创建 initDMDB03.ora 并输入如下内容
vi initDMDB03.ora
HS_FDS_CONNECT_INFO = DMDB03
HS_FDS_TRACE_LEVEL = OFF
HS_FDS_SHAREABLE_NAME = libodbc.so
set ODBCINI=/etc/odbc.ini
十、重新加载监听
lsnrctl reload
lsnrctl status
tnsping DMDM03
十一、ORACLE创建dblink并验证:
create public database link dmlink03 connect to "qs" identified by "pw123456dm" using 'DMDB03';
select count(*) from ISTORM_ALL.ACT_HI_TSK_LOG@dmlink03;
文章
阅读量
获赞