暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

DM8-DBLINK

原创 BinGoSTop 2025-05-28
86

DM-DBLINK

环境准备

服务器

Windows

Linux

Linux

Linux

数据库

DM8

DM8

Oracle11g

Dameng

IP

192.168.0.1

192.168.0.21

192.168.0.21

192.168.0.21

端口

5236

5236

1521

3306

MAL端口

5282

5283

DM – DM

通过 MAL_INI 创建 dblink

1.1.1 开启 MAL

select SF_GET_PARA_VALUE (2,'MAL_INI');

SP_SET_PARA_VALUE (2,'MAL_INI',1);

或 vim dm.ini

MAL_INI = 1

1.1.2 编辑 dmmal.ini

[mal_inst1]

mal_inst_name = DMSERVER

mal_host = 192.168.0.1

mal_port = 5282

[mal_inst2]

mal_inst_name = DM

mal_host = 192.168.0.21

mal_port = 5283

1.1.3 重启数据库,创建DBLINK

create or replace public link DML2 connect 'DAMENG' with "SYSDBA" identified by "******" using '192.168.0.21/5283';

通过DPI 创建dblink

create or replace public link DML1 connect 'DPI' with "SYSDBA" identified by "******" using '192.168.0.21:5236';

DM – Oracle

WINDOWS的DM8,通过OCI创建dblink

2.1.1 解压oracle数据库 winx64_12201_client.zip

2.1.2 配置环境变量

确保 cmd ,sqlplus 可以登陆。

2.1.3 创建dblink

create or replace public link DMO1 connect 'ORACLE' with "SYSTEM" identified by "******" using '192.168.0.21:1521/ora11g';

select * from t1@DMo1

2.2 LINUX的DM8,通过OCI创建dblink

2.2.1 服务器下已安装oracle数据库,只需要修改dmdba下.bash_profile

2.2.2 如果没有安装oracle,则需要下载

unzip /soft/instantclient-basic-linux.x64-11.2.0.4.0.zip -d /opt/oracle

2.2.3 如果Instance Client安装包是18.3之前的版本,还需要创建几个动态库的软链接

cd /opt/oracle/instantclient_11_2

ln -s libclntsh.so.11.1 libclntsh.so

ln -s libocci.so.11.1 libocci.so

2.2.4 修改dmdba用户下的.bash_profile文件,添加如下内容

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/opt/oracle/instantclient_11_2"

2.2.5 重启数据库,创建dblink

create or replace public link DMO1 connect 'ORACLE' with "SYSTEM" identified by "******" using '192.168.0.21:1521/ora11g';

3 DM – MYSQL

3.1 在达梦数据库安装mysql-odbc

https://repo.mysql.com/yum/mysql-connectors-community/el/7/x86_64/

yum install -y mysql-connector-odbc-5.3.9-1.el7.x86_64.rpm

3.2 查看odbc版本

odbc_config --version

查看ODBC配置文件存放的位置

odbc_config --odbcini

odbc_config --odbcinstini

odbcinst -j

3.3 配置odbc文件

odbc.ini 的 Driver = odbcinst.ini 头名字

[root@ora11g ~]# cat /etc/odbcinst.ini

[MySQL ODBC 5.3 Unicode Driver]

Driver=/usr/lib64/libmyodbc5w.so

UsageCount=1

[root@ora11g ~]# cat /etc/odbc.ini

[mysqlodbc]

Driver = MySQL ODBC 5.3 Unicode Driver

SERVER = 192.168.0.21

PORT = 3306

USER = bingo

PASSWORD = 123456

CHARSET= gbk

DATABASE= bingo

OPTION = 3

TRACE = OFF

3.4 测试是否可连接mysql

isql -v mysqlodbc

注意:

Mysql 需要开启 ssl 功能。

3.5 mysql创建测试库

create database bingo; --创建测试库

use bingo; --进入测试库

create table T1(id int ,name varchar(20)); --创建dameng测试表

insert into T1 values (1,'bingo'); --插入测试数据

grant all privileges on bingo.* to 'bingo'@'%' IDENTIFIED BY '123456'; --创建远程连接的用户并设置密码

flush privileges; --重新加载权限表

3.6 DM创建dblink

create or replace public LINK dmmysql1 connect 'ODBC' with "bingo" identified by "123456" using 'mysqlodbc';

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论