首页 > 数据库 >ORACLE到达梦数据库DBLINK配置

ORACLE到达梦数据库DBLINK配置

时间:2023-08-08 22:07:40浏览次数:48  
标签:centos7 数据库 ODBC DBLINK oracle SID ORACLE unixODBC

ORACLE到达梦数据库DBLINK配置

1. ORACLE到达梦数据库DBLINK说明

创建 ORACLE到达梦数据库的DBLINK,基于ORACLE透明网关+ODBC协议连接达梦数据库原理。以下为创建DBLINK过程案例。

2. 配置ORACLE到DM的DBLINK

2.1 环境说明

源数据库: ORACLE 11.0.2.4
目标数据库: DM8

2.2 安装DM客户端

在ORACLE服务器安装DM客户端(此安装过程略),安装后生成的$DM_HOME/libdodbc.so文件即DM数据库的ODBC驱动,本案例路径为:/opt/dmdba/dmdbms/bin/libdodbc.so,后面配置ODBC要用到。

2.3 安装unixODBC

在ORACLE服务器安装unixODBC,库文件路径指定/usr/lib64,会省去LD_LIBRARY_PATH等环境变量配置。

[oracle@centos7 ~]$ tar xf unixODBC-2.3.2.tar
[oracle@centos7 ~]$ cd unixODBC-2.3.2/
[oracle@centos7 unixODBC-2.3.2]$ ./configure --prefix=/usr/local/unixODBC-2.3.0 --includedir=/usr/include --libdir=/usr/lib64 --bindir=/usr/bin --sysconfdir=/etc
[oracle@centos7 unixODBC-2.3.2]$ make
[oracle@centos7 unixODBC-2.3.2]$ su
[root@centos7 unixODBC-2.3.2]# make install
Libraries have been installed in:
/usr/lib64
touch /etc/odbcinst.ini
touch /etc/odbc.ini

2.4 配置ODBC

2.4.1 查看ODBC相关配置路径

[root@centos7 ~]# odbcinst -j
unixODBC 2.3.2
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /root/.odbc.ini
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

2.4.2 配置达梦数据库驱动路径

[root@centos7 ~]# vi /etc/odbcinst.ini
[DM8 ODBC DRIVER]
Description = ODBC DIRVER FOR DM8
DRIVER = /opt/dmdba/dmdbms/bin/libdodbc.so

2.4.3 配置达梦数据库连接

[root@centos7 ~]# vi /etc/odbc.ini
[dm8]
Description = DM ODBC DSN
Driver = DM8 ODBC DRIVER
SERVER = 192.168.228.228
UID = test
PWD = 123456789
TCP_PORT = 5236

2.4.4 Oracle用户环境变量配置

将ODBC和DM8的库路径加入LD_LIBRARY_PATH:

[oracle@centos7 ~]$ vi .bash_profile
export LD_LIBRARY_PATH=/usr/lib64:/opt/dmdba/dmdbms/bin:$LD_LIBRARY_PATH

[oracle@centos7 ~]$ source .bash_profile

2.4.5 验证连接达梦数据库

[oracle@centos7 ~]$ isql -v dm8 TEST 123456789
+---------------------------------------+
| Connected! |
| |
| sql-statement |
| help [tablename] |
| quit |
| |
+---------------------------------------+

2.5 透明网关配置

[oracle@centos7 ~]$ vi $ORACLE_HOME/hs/admin/initdm8.ora
HS_FDS_CONNECT_INFO=dm8
HS_FDS_TRACE_LEVEL = debug #生产环境配置off
HS_FDS_SHAREABLE_NAME=/usr/lib64/libodbc.so
HS_LANGUAGE="SIMPLIFIED CHINESE_CHINA.ZHS16GBK" #语言根据自己环境修改
HS_NLS_NCHAR=UCS2
set ODBCINI=/etc/odbc.ini

2.6 配置监听

[oracle@centos7 ~]$ vi $ORACLE_HOME/network/admin/listener.ora
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(PROGRAM = dg4odbc) #dg4odbc是Oracle的透明网关协议无需修改
(ORACLE_HOME = /opt/oracle/product/11g/oradb1)
(SID_NAME = dm8) #名称保持跟透明网关的SID一致
(ENV="LD_LIBRARY_PATH=/usr/lib64:/opt/dmdba/dmdbms/bin:$ORACLE_HOME/lib") #这行如果配置了系统环境变量可以不配置
)
(SID_DESC =
(GLOBAL_DBNAME = oradb1) #本地数据库实例名称
(ORACLE_HOME = /opt/oracle/product/11g/oradb1)
(SID_NAME = oradb1)
)
)

配置后重启监听:

停止监听: lsnrctl stop
启动监听: lsnrctl start

2.7 配置TNS

[oracle@centos7 ~]$ vi $ORACLE_HOME/network/admin/tnsnames.ora
dm8 =
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=TCP) (HOST=localhost) (PORT=1521)
)
(CONNECT_DATA=(SID=dm8))
(HS=OK)
)

通过TNSPING检查TNS配置:

[oracle@centos7 ~]$ tnsping dm8
TNS Ping Utility for Linux: Version 11.2.0.4.0 - Production on 01-JUN-2023 22:06:54
Copyright (c) 1997, 2013, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION= (ADDRESS= (PROTOCOL=TCP) (HOST=localhost) (PORT=1521)) (CONNECT_DATA=(SID=dm8)) (HS=OK))
OK (0 msec)

2.8 创建DBLINK

create public database link ora_to_dm connect to TEST identified by "123456789" USING 'dm8';

2.9 验证链接

返回记录则说明链接正常:

SQL> select * from v$version@ora_to_dm;
BANNER
DM Database Server 64 V8
DB Version: 0x7000c
03134284044-20230420-188270-20040

标签:centos7,数据库,ODBC,DBLINK,oracle,SID,ORACLE,unixODBC
From: https://blog.51cto.com/u_13482808/7012270

相关文章

  • 如何在BL302控制器上安装和使用SQLite3数据库
    本文主要讲述了在钡铼技术BL302嵌入式arm控制器上运行SQLite3数据库的命令示例。SQLite3是一个轻型的嵌入式数据库,不需要安装数据库服务器进程,占用资源低且处理速度快。首先,需要将对应版本的SQLite3文件复制到设备的/usr/目录下,并解压缩。然后进入/usr/lib目录,创建两个链......
  • PostgreSQL数据库基本使用
    1.简介PGSQL是一个功能非常强大同时是开源的对象关系型数据库.经过二十几年的发展,PostgreSQL 是目前世界上可以获得的最先进的开放源码数据库系统。2.基本语法表是关系型数据库存储结构化数据的基本结构,可以使用CREATETABLE创建所需要的结构,其语法:CREATETABLEIFNOTEXISTS......
  • 如何通过navicat连接数据库修改EasyCVR视频监控管理平台的登录密码?
    TSINGSEE青犀视频监控管理平台EasyCVR可以根据不同的应用场景需求,让平台在内网、专网、VPN、广域网、互联网等各种环境下进行音视频的采集、接入与多端分发。在视频能力上,平台可实现视频实时直播、云端录像、云存储、回放与检索、告警上报、视频快照、视频转码与分发、平台级联等。......
  • Jupyter Notebook 遇上 NebulaGraph,可视化探索图数据库
    在之前的《手把手教你用NebulaGraphAI全家桶跑图算法》中,除了介绍了ngai这个小工具之外,还提到了一件事有了JupyterNotebook插件:https://github.com/wey-gu/ipython-ngql,可以更便捷地操作NebulaGraph。本文就手把手教你咋在JupyterNotebook中,愉快地玩图数据库。只......
  • Jupyter Notebook 遇上 NebulaGraph,可视化探索图数据库
    在之前的《手把手教你用NebulaGraphAI全家桶跑图算法》中,除了介绍了ngai这个小工具之外,还提到了一件事有了JupyterNotebook插件:https://github.com/wey-gu/ipython-ngql,可以更便捷地操作NebulaGraph。本文就手把手教你咋在JupyterNotebook中,愉快地玩图数据库。只......
  • Oracle使用存储过程批量导出建表语句和索引语句
    --1.用system用户创建路径datA_dump用于存放文件--/u01/dump必需是已经存在的目录createorreplacedirectoryDATA_DUMPas'/u01/dump';--用sys用户登录给要访问的用户指定访问目录的权限grantwriteondirectoryDATA_DUMPtohr;grantreadondirectoryDATA_DUMPtoh......
  • Django 的数据库操作
    Djangp提供了一套抽象的API,能够对数据库进行CRUD(create,retrieve,update,deleteobjects)1、使用shell操作安装ipython交互环境pipinstall-ihttps://pypi.douban.com/simpleipythonpyhtonmanage.pyshell-iipython查看所有项目:Projects.objects.......
  • 亚信科技AntDB数据库与库瀚存储方案完成兼容性互认证,联合方案带来约20%性能提升
    近日,亚信科技AntDB数据库与苏州库瀚信息科技有限公司自主研发的RISC-V数据库存储解决方案进行了产品兼容测试。经过双方团队的严格测试,亚信科技AntDB数据库与库瀚数据库存储解决方案完全兼容、运行稳定。除高可用性测试外,双方进一步开展TPC-C横向比对性能测试,库瀚数据库存储解决方......
  • 数据库增删改查语句(入门)
    数据库增删改查语句一、增加insertinto...values1、insertinto表名(列名1,列名2,...列名n) values(值1,值2,...值n);(写列名插入数据)2、insertinto表名values(值1,值2,...值n);(不写列名插入数据)二、删除delete1、deletefrom表名;(删除表中所有数据)2、deletefrom表名where列=值;(根......
  • android 导出带数据库文件的APK
    http://www.ophonesdn.com/article/show/111技术文章基于OPhoneSDK1.5的英文电子词典的实现基于OPhoneSDK1.5的英文电子词典的实现OPhone平台开发,2009-12-0711:06:42标签:OPhoneSDK1.5英文词典英文词典是手机中经常使用的应用。因此,在本文将......