[DM8] DM-DM DBLINK DPI方式

前言

        对于DM与DM之间的DBLINK,三种方式中,使用DPI方式配置上最为方便,ODBC方式需要安装ODBC包并配置ODBC数据源,dmmal方式需要设置MAL_INI数据库参数、配置dmmal.ini文件并需要重启数据库服务。

        dpi类型的dblink,达梦数据库软件安装完成后自带DPI库,无需进行其他配置操作即可在数据库中直接创建dblink。

        注意:两库之间字符级编码不一致,无法搭建DBLINK。

使用限制

外部链接的使用有以下限制:
1.DM-DM 的同构外部链接不支持 MPP 环境,DM与异构数据库的外部链接支持 MPP环境;
2.增删改不支持 INTO 语句;
3.不支持使用游标进行增删改操作;
4.不支持操作远程表的复合类型列;
5.DBLINK 理论上不支持 LOB 类型列的操作,但支持简单的增删改语句中使用常量来对 LOB 类型列进行操作;
6.DBLINK 的本地库和远程库的大小写敏感参数 CASE_SENSITIVE 应保持一致,若不一致,应用需要保证 SQL 语句书写符合远程库的规范;
7.DBLINK 的本地库和远程库的字符集编码应一致,否则可能导致字符串操作出错!
8.DM-DM类型的 DBLINK 不支持远程函数调用。
另外,DM 连接异构数据库的外部链接还有如下使用限制:
1.数据类型以 DM 为基础,不支持 DM 没有的数据类型;
2.语法以 DM 的语法为标准,不支持 DM 不兼容的语法;
3.主键更新,如果是涉及到多个服务器的语句,不能保证更新操作一定成功;
4.使用CREATE VIEW view_name(view_col_name) AS SELECT ITEM FROM T@LINK 方式创建的查询远程对象的本地视图,对于异构库,不能保证操作一定成功。对于查询异构库远程对象的本地视图,最好采用 CREATE VIEW AS SELECT ITEM AS alias_name FROM T@LINK 方式创建。

创建语法

create [OR REPLACE] link "链接名" connect 'DPI' with "用户名" identified by "密码" using 'IP:端口';
-- [OR REPLACE] 输入时,若有同名link,则覆盖

环境信息

操作系统

Centos 8

达梦版本

DM8 x64

达梦版本

DM8 x64

源端DM

12.68.1.1

目的端DM

12.68.1.2

创建dblink

create public link "dmlink" connect 'DPI' with "SYSDBA" identified by "SYSDBA" using '12.68.1.2:5236';

验证dblink的连通性

目的端查询

SELECT A.*,ROWID FROM A;

源端查询

SELECT A.*,ROWID FROM A@dmlink;

建表语句

CREATE TABLE A(A INT); 
INSERT INTO A SELECT '1' FROM DUAL; 
COMMIT;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值