达梦DBLINK访问ORACLE配置方法

news/2024/10/11 12:08:01/

目录

1、概述

2、测试环境

3、语法简介

5.1 通过OCI配置

5.2 通过ODBC配置


1、概述

        本文介绍了达梦DBLINK的配置方法。有3部分内容,1)达梦访问到达梦的配置方法;2)通过OCI方式访问ORACLE的配置方法;3)通过ODBC方式访问ORACLE的配置方法。

2、测试环境

操作系统:CentOS7.6

达梦数据库版本:DM8_20240712

ORACLE版本:19c

Oracle Instant Client包版本:19.19

ODBC版本:2.3.12

3、语法简介

语法格式:

CREATE [OR REPLACE] [PUBLIC] LINK [IF NOT EXISTS] <外部链接名> CONNECT ['<连接库类型>'] WITH <登录名> IDENTIFIED BY <登录口令> USING  '<外部连接串>' [<OPTION 子句>]

参数:

1)外部链接名: 数据库链接的名称

2)连接库类型:目前只支持 DPI、ODBC、DAMENG 或 ORACLE,默认为 DPI。DPI和DAMENG 用于连接达梦数据库;ODBC 可以连接所有支持 ODBC 协议的数据库。ORACLE用于连接 ORACLE 数据库

3)外部链接串:

<DPI外部链接串>通过DPI接口访问远程达梦数据库,不需要进行额外配置;

<ODBC外部链接串>ODBC数据源DSN需要用户手动配置;

<DAMENG外部链接串>通过MAL系统访问远程达梦数据库,需要配置DMMAL.INI;

<ORACLE外部链接串>可以使用配置的网络服务名tsn_name(网络服务名需要配置),

或者连接描述符description(连接描述符是网络连接目标特殊格式的描述,它包

括网络协议、主库IP地址、端口号和服务名),或者<IP地址>/<服务名>;

1)创建DBLINK

CREATE PUBLIC LINK LINK_DM129 CONNECT 'DPI' WITH USER1 IDENTIFIED BY Dameng123 USING '192.168.220.129:6347';

2)在远端DM库造测试数据

create  table USER1.TB_TEST3
(
C1 VARCHAR(10));INSERT INTO USER1.TB_TEST3 VALUES('AA');
COMMIT;

3)测试DBLINK

SELECT * from tb_test3@LINK_DM129;

配置成功

5.1 通过OCI访问

1)安装Oracle Instance Client包

到oracle官网下载Oracle Instance Client包:

https://www.oracle.com/database/technologies/instant-client/downloads.html

开始安装

mkdir /app/oracle19
unzip /app/instantclient-basic-linux.x64-19.19.0.0.0dbru.el9.zip  -d /app/oracle19

查看安装路径

ls  /app/oracle19

安装路径为:/app/oracle19/instantclient_19_19

2)配置LD_LIBRARY_PATH环境变量

vi /home/dmdba/.bash_profile
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/app/oracle19/instantclient_19_19

3)重启达梦

DmServiceDMSERVER restart

4)建DBLINK

通过连接描述符创建

CREATE OR REPLACE LINK LINK_ORACLE130 CONNECT 'ORACLE' WITH system IDENTIFIED BY system123 USING
'(DESCRIPTION =
(ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.220.130)(PORT =1521)))
(CONNECT_DATA = (SERVICE_NAME = ORCLPDB1) )
)';

5)在oracle创建测试数据

CREATE TABLE TB_TEST01
(
C1 VARCHAR2(10),
C2 VARCHAR2(10)
);
INSERT INTO TB_TEST01 VALUES('111','aaa');
INSERT INTO TB_TEST01 VALUES('222','bbb');
COMMIT;

6)测试DBLINK

select * from tb_test01@LINK_ORACLE130;

配置成功

5.2 通过ODBC访问

1)安装oracle odbc驱动包

下载地址同5.1节

开始安装

unzip /app/instantclient-odbc-linux.x64-19.19.0.0.0dbru.el9.zip -d /app/oracle19

2)配置tnsnames.ora

vi /app/oracle19/instantclient_19_19/network/admin/tnsnames.oraORA130 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.220.130)(PORT = 1521))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME =  ORCLPDB1))
)

3)配置配置TNS_ADMIN系统环境变量

vi /home/dmdba/.bash_profile
export TNS_ADMIN=/app/oracle19/instantclient_19_19/network/admin

4)安装ODBC

tar -zxvf unixODBC-2.3.12.tar.gz
cd unixODBC-2.3.0/
./configure
make
make install#查看
odbcinst -j

5)配置odbcinst.ini

vi /usr/local/etc/odbcinst.ini[OracleODBC19]
Description     = Oracle ODBC Driver
Driver          = /app/oracle19/instantclient_19_19/libsqora.so.19.1

6)配置odbc.ini

vi  /usr/local/etc/odbc.ini[ORA130]               
DSN = ORA130           
Driver =OracleODBC19   
ServerName = ORA130    ---tnsnames.ora

7)测试odbc

su - dmdba
isql -v ORA130 system system123

odbc配置成功

8)创建DBLINK

create link LINK_ODBC_ORA130 connect 'ODBC' with system identified by system123 using 'ORA130';

9)重启达梦数据库

DmServiceDMSERVER restart

10)测试

select * from tb_test01@LINK_ODBC_ORA130;

配置成功,本文结束!

2024.10.10


http://www.ppmy.cn/news/1537443.html

相关文章

JavaScript 命令模式实战:打造可撤销的操作命令

一. 前言 在前端开发中&#xff0c;命令模式&#xff08;Command Pattern&#xff09;作为一种行为型设计模式&#xff0c;可以帮助我们将请求封装成一个对象&#xff0c;从而实现调用对象和执行对象之间的解耦&#xff0c;方便扩展和修改。 本文将和大家分享 JavaScript 中的…

视频怎么去除杂音保留人声?让人声更动听!视频噪音处理攻略

在视频制作过程中&#xff0c;音质是至关重要的一环。然而&#xff0c;很多时候我们录制的视频会伴随着各种不想要的杂音&#xff0c;比如风声、交通噪音或是其他环境音&#xff0c;这些杂音严重影响了观众的观看体验。那么&#xff0c;如何在保留人声的同时&#xff0c;有效地…

python爬虫题目

网站 https://project-iprj6705f17ebcfad66461658c5c-8000.preview.node01.inscode.run/ 第一道题爬取api并且保存 import requests,re import json url "https://project-iprj6705f17ebcfad66461658c5c-8000.preview.node01.inscode.run/tasks/api/" headers {us…

Linux相关概念和易错知识点(15)(exec系列函数)

进程程序替换 我们之前已经知道如何创建子进程了。fork函数内部会为我们拷&#xff0c;数据和代码&#xff0c;创建PCB&#xff0c;当走到最后return语句时两个进程分别返回&#xff0c;之后父子进程保持独立。虽然我们可以控制代码逻辑使得父子进程走的代码不同&#xff0c;父…

洗衣店数字化转型:Spring Boot订单管理

3系统分析 3.1可行性分析 通过对本洗衣店订单管理系统实行的目的初步调查和分析&#xff0c;提出可行性方案并对其一一进行论证。我们在这里主要从技术可行性、经济可行性、操作可行性等方面进行分析。 3.1.1技术可行性 本洗衣店订单管理系统采用JAVA作为开发语言&#xff0c;S…

开封建筑设计资质申请的基本要求是什么?

企业法人资格&#xff1a;必须是依法设立并有效存续的企业法人&#xff0c;具有独立承担民事责任的能力。 需持有有效的工商营业执照&#xff0c;企业名称、经营范围等应符合建筑设计业务的要求。 注册资本&#xff1a;不同等级的资质对注册资本有不同的要求&#xff0c;例如…

linux下cmake编译64位,32位,ARM,ARM64程序

准备工作 gnu提供不同平台的编译工具,为同一平台打造不同的程序提供条件,它可以提供64位,32位,x86与arm平台编译. 本次测试环境为 debian 6.1 x86_64系统,当测试时我们需要安装以下环境: 安装基本依赖 sudo apt install module-assistant build-essential 安装x64位gcc/g 系统…

ChatGPT背景下,高职人工智能技术应用专业的人才培养

一、引言 ChatGPT&#xff0c;即聊天生成预训练变换器&#xff0c;由美国OpenAI公司开发&#xff0c;自2022年11月首次亮相以来&#xff0c;已成为人工智能领域的一个标志性成就。这款聊天机器人利用先进的人工智能技术&#xff0c;处理自然语言&#xff0c;能够精准把握用户的…