达梦数据库同构异构 DBLINK
数据库链接对象 (LINK) 是 DM 中的一种特殊的数据库实体对象它记录了远程数据库的连接和路径信息用于建立与远程数据的联系。针对达梦数据库DM的数据库链接DBLINK搭建无论是同构环境DM 到 DM还是异构环境DM 到 Oracle、MySQL 等其核心均依赖于创建链接对象时对远程数据库的连接信息、驱动类型及访问权限的精确配置。同构 DBLINKDM -DM 搭建最为直接利用达梦自身的 MAL 系统或常规网络通信即可实现。异构 DBLINKDM -Oracle /MySQL /SQL Server 等 则需要依赖达梦提供的外部链接驱动如 DCI 驱动连接 OracleODBC 驱动连接 MySQL。无论同构还是异构创建后均可像访问本地表一样通过 表名链接名 进行远程 SQL 操作。一 同构 DBLINKdm-dm1.DM的安装部署可以参考DM8的安装部署-CSDN博客2.创建同构 DBLINK数据库1数据库2IP地址192.168.140.139192.168.140.140实例名DBLINK01DBLINK02数据库名DBLINK01DBLINK02MAL端口53365336数据库软件目录/home/dmdba/dmdbms/home/dmdba/dmdbms数据库实例目录/dmdata/data/DBLINK01/dmdata/data/DBLINK02操作系统KylinKylin1.修改dm.ini文件MAL_INI 12.配置 dmmal.ini 文件数据库1和数据库2 dmmal.ini 文件[MAL_INST1] MAL_INST_NAME DBLINK01 MAL_HOST 192.168.140.139 MAL_PORT 5336 [MAL_INST2] MAL_INST_NAME DBLINK02 MAL_HOST 192.168.140.140 MAL_PORT 53363.验证数据库1-- 创建表 T1 CREATE TABLE T1(C1 INT, C2 VARCHAR(20)); -- 插入测试数据 INSERT INTO T1 VALUES(1, A); INSERT INTO T1 VALUES(2, B); INSERT INTO T1 VALUES(3, C); COMMIT; -- 验证 SELECT * FROM T1;数据库2-- 创建指向数据库1的 DBLINK CREATE PUBLIC LINK LINK02 CONNECT DAMENG WITH SYSDBA IDENTIFIED BY Zs010310 USING 192.168.140.139/5236;测试1数据库2查看数据库1的T1表数据测试2数据库2通过创建的LINK02向数据库1的表T1中插入数据SQL INSERT INTO T1LINK02 VALUES(4, D); INSERT INTO T1LINK02 VALUES(5, E);数据库2远程查看数据库1查看二 异构 DBLINKdm-oracle1.Oracle 19c安装部署1 环境配置准备1.1防火墙配置systemctl stop firewalld.service setenforce 0 sed -i s/SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config1.2安装依赖包yum install -y binutils compat-libcap1 compat-libstdc-33 gcc gcc-c glibc glibc-devel ksh libaio libaio-devel libgcc libstdc libstdc-devel libXi libXtst make sysstat unixODBC unixODBC-devel bc readline-devel elfutils-libelf elfutils-libelf-devel1.3创建用户和组groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper useradd -u 54321 -g oinstall -G dba,oper oracle echo 密码 | passwd --stdin oracle1.4创建软件安装目录mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1 mkdir -p /u01/app/oraInventory mkdir -p /u01/app/oracle/oradata mkdir -p /u01/app/oracle/fast_recovery_area chown -R oracle:oinstall /u01 chmod -R 775 /u012.配置内核参数2.1编辑 sysctl.conf 文件cat /etc/sysctl.conf EOF fs.file-max 6815744 kernel.sem 250 32000 100 128 kernel.shmmni 4096 kernel.shmall 1073741824 kernel.shmmax 4398046511104 net.core.rmem_default 262144 net.core.rmem_max 4194304 net.core.wmem_default 262144 net.core.wmem_max 1048576 net.ipv4.ip_local_port_range 9000 65500 fs.aio-max-nr 1048576 EOF2.2使内核参数生效sysctl -p2.3配置用户限制cat /etc/security/limits.conf EOF oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 16384 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 oracle soft memlock 6291456 oracle hard memlock 6291456 EOF2.4 启用 PAM 限制模块echo session required pam_limits.so /etc/pam.d/login3.Oracle 用户环境配置# 切换到 oracle 用户 su - oracle # 编辑环境变量 cat /home/oracle/.bash_profile EOF export ORACLE_BASE/u01/app/oracle export ORACLE_HOME$ORACLE_BASE/product/19.3.0/dbhome_1 export ORACLE_SIDORCL export PATH$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH$ORACLE_HOME/lib:/lib:/usr/lib export NLS_LANGAMERICAN_AMERICA.AL32UTF8 EOF # 使环境变量生效 source /home/oracle/.bash_profile4.可视化安装#解压 unzip -q /home/oracle/LINUX.X64_193000_db_home.zip -d $ORACLE_HOME mkdir -p $ORACLE_HOME/response # root窗口执行 xhost # 新开一个终端切换oracle用户依次执行 su - oracle export DISPLAY:0.0 cd $ORACLE_HOME ./runInstaller切换终端root运行5.配置监听图形化su - oracle netca2. 异构 DBLINK通过 OCIOracle Call Interface方式配置 DM8 与 Oracle 19c 的异构 DBLINK 连接DM数据库Oracle数据库IP地址192.168.140.142192.168.140.142实例名DBSERVERTEST数据库名DMTESTTEST端口52371521数据库软件目录/home/dmdba/dmdbms/u01/app/oracle/product/19.3.0/dbhome_1数据库实例目录/dmdata/data/DMTEST/u01/app/oracle/oradata/TEST操作系统CentOS 7CentOS 7CPU架构x86_64x86_64数据库版本DM819c1. oracle建表sqlplus / as sysdba -- 创建新用户 CREATE USER ORADBA IDENTIFIED BY 密码; -- 授权 GRANT CONNECT, RESOURCE, UNLIMITED TABLESPACE TO ORADBA; -- 切换用户 CONN ORADBA/Zs010310; -- 建表 CREATE TABLE ORA1 (C1 INT, C2 VARCHAR(20)); -- 插入数据 INSERT INTO ORA1 VALUES(1, A); INSERT INTO ORA1 VALUES(2, B); INSERT INTO ORA1 VALUES(3, C); COMMIT;2.配置Oracle Instant Client# root用户执行 # 创建目录 cd /opt/oracle unzip /home/zhangsu/instantclient-basic-linux.x64-11.2.0.4.0.zip -d /opt/oracle # 创建软链接 cd /opt/oracle/instantclient_11_2 ln -s libclntsh.so.11.1 libclntsh.so ln -s libocci.so.11.1 libocci.s3. 配置DM环境变量# 切换到dmdba用户 su - dmdba # 编辑环境变量 vi ~/.bash_profile # 增加环境变量 export LD_LIBRARY_PATH$LD_LIBRARY_PATH:/opt/oracle/instantclient_11_2 export ORACLE_HOME/opt/oracle/instantclient_11_2 export NLS_LANGAMERICAN_AMERICA.AL32UTF8 # 使环境变量生效 source ~/.bash_profile# root用户重启DM服务 systemctl restart DmServiceDBSERVER4.创建DBLINK# 切换到dmdba用户 su - dmdba # 登录DM数据库 cd /home/dmdba/dmdbms/bin ./disql SYSDBA/密码localhost:5237-- 创建DBLINK CREATE PUBLIC LINK LINK1 CONNECT ORACLE WITH ORADBA IDENTIFIED BY 密码 USING 192.168.140.142:1521/TEST;5.测试DBLINK从 Oracle 数据库 查询返回的当前系统时间SELECT SYSDATE FROM DUALLINK1;DM查询ORACLE数据DM通过DBLINK对ORACLE插入数据DM查询ORACLE查询三 异构 DBLINKdm-mysql1.mysql安装部署1 下载安装# root用户执行 # 创建repo文件 cat /etc/yum.repos.d/mysql-community.repo EOF [mysql57-community] nameMySQL 5.7 Community Server baseurlhttps://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-5.7-community-el7-x86_64/ enabled1 gpgcheck0 EOF2 修改密码# root用户执行 # 启动服务 systemctl start mysqld # 查看临时密码 grep temporary password /var/log/mysqld.log # root用户执行 # 用临时密码登录注意单引号 mysql -uroot -p临时密码 -- 修改密码策略允许简单密码 set global validate_password_policy0; set global validate_password_length1; flush privileges; -- 修改密码为 ALTER USER rootlocalhost IDENTIFIED BY 密码; flush privileges; -- 退出 EXIT;3 创建测试表-- 创建用户 CREATE USER dmuser% IDENTIFIED BY Zs010310; GRANT ALL PRIVILEGES ON *.* TO dmuser% WITH GRANT OPTION; flush privileges; -- 创建数据库和表 CREATE DATABASE testdb; USE testdb; CREATE TABLE t1 (id INT, name VARCHAR(20)); INSERT INTO t1 VALUES(1, A),(2, B),(3, C);2. 异构DBLINK本文档描述通过 ODBCOpen Database Connectivity方式配置 DM8 与 MySQL 的异构 DBLINK 连接DM数据库MySQL数据库IP地址192.168.140.142192.168.140.142端口52373306用户SYSDBAroot1 安装和配置ODBC# root用户执行 # 安装unixODBC yum install -y unixODBC unixODBC-devel # 下载ODBC驱动 wget https://dev.mysql.com/get/Downloads/Connector-ODBC/8.0/mysql-connector-odbc-8.0.33-1.el7.x86_64.rpm # 安装 rpm -ivh mysql-connector-odbc-8.0.33-1.el7.x86_64.rpm --nodeps驱动配置# root用户执行 # 配置 odbcinst.ini驱动配置 cat /etc/odbcinst.ini EOF [DM8 ODBC DRIVER] DescriptionDM ODBC DRIVER FOR DM8 Driver/home/dmdba/dmdbms/drivers/odbc/libdodbc.so FileUsage1 [MySQL ODBC 8.0 Unicode Driver] DescriptionMySQL ODBC 8.0 Unicode Driver Driver/usr/lib64/libmyodbc8w.so UsageCount1 EOF数据源配置cat /etc/odbc.ini EOF [MYSQL_DBLINK] DriverMySQL ODBC 8.0 Unicode Driver Server127.0.0.1 Port3306 Databasetestdb Userroot PasswordZs010310 Charsetutf8mb4 EOF测试连接isql MYSQL_DBLINK配置DM环境变量# 切换到dmdba用户 su - dmdba # 查看当前环境变量 echo $LD_LIBRARY_PATH# 编辑环境变量 vi ~/.bash_profile export DM_HOME/home/dmdba/dmdbms export LD_LIBRARY_PATH$DM_HOME/bin:/usr/lib64 export ODBCINI/etc/odbc.ini export ODBCSYSINI/etc创建DBLINKcd /home/dmdba/dmdbms/bin ./disql SYSDBA/Zs010310localhost:5237 #创建DBLINK CREATE LINK MYSQL_LINK CONNECT ODBC WITH root IDENTIFIED BY Zs010310 USING MYSQL_DBLINK;DM查询MYSQL的数据SELECT * FROM t1MYSQL_LINK;达梦社区地址https://eco.dameng.com

相关新闻

新兴网站建设如何助力中小企业在数字化浪潮中脱颖而出

新兴网站建设如何助力中小企业在数字化浪潮中脱颖而出

在这个数字化的时代,互联网早已不再是遥不可及的技术概念,而是像水电煤一样,成为了我们生活和工作不可或缺的基礎设施。对于很多中小企业的老板或者初创团队的负责人来说,每当提到“建站”,第一反应往往是头疼:贵、慢、还不懂技术。很多人觉得,我都把东西卖给客户了,网…

2026/10/11 10:31:54 阅读更多 →
Dell PowerEdge 服务器苏州采购渠道对比|授权代理商甄别方法

Dell PowerEdge 服务器苏州采购渠道对比|授权代理商甄别方法

苏州禾兴计算机网络集成有限公司是苏州本地正规 DELL 服务器授权代理商,原厂资质齐全,作为戴尔授权合作伙伴,可全系列供应 Dell PowerEdge 机架式、塔式服务器,常备现货库存,提供苏州本地化上门售后、设备部署调试服务…

2026/10/2 21:07:40 阅读更多 →
Adobe Illustrator脚本工具箱:20+个免费插件彻底改变你的设计工作流

Adobe Illustrator脚本工具箱:20+个免费插件彻底改变你的设计工作流

Adobe Illustrator脚本工具箱:20个免费插件彻底改变你的设计工作流 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 你知道吗?每个Adobe Illustrator设计师平…

2026/10/7 12:07:30 阅读更多 →

最新新闻

机器学习实现盾构机滚刀状态识别:CNN、LSTM、GRU、SVM与随机森林全流程

机器学习实现盾构机滚刀状态识别:CNN、LSTM、GRU、SVM与随机森林全流程

简介:这份资源面向机械加工与智能制造方向的本科生、研究生及算法初学者,提供一套基于机器学习的滚刀状态识别完整项目,可用于毕业设计、期末大作业或课程设计。项目同时实现CNN、LSTM、GRU、SVM与随机森林等多种模型,便于横向对比…

2026/10/11 22:22:06 阅读更多 →
单相光伏储能模型拆解:能量调度、容量收益与运维避坑指南

单相光伏储能模型拆解:能量调度、容量收益与运维避坑指南

如果有人问我,过去几年能源领域里最接近“小奇迹”的东西是什么,我的答案不是某块效率破纪录的光伏板,而是把光伏板、电池、逆变器这三样看似普通的器件组合起来的单相光伏储能模型。几块组件铺在屋顶,一组磷酸铁锂电池放在阳台或…

2026/10/11 22:22:06 阅读更多 →
中科蓝讯BT5756C反复进入升级模式:根因分析与产线烧录排查指南

中科蓝讯BT5756C反复进入升级模式:根因分析与产线烧录排查指南

最近在产线调试一款采用中科蓝讯5756C的蓝牙耳机方案,遇到了一个特别折腾人的问题:用测试盒给芯片升级固件,明明烧录过程正常走完、工具也提示成功了,可一旦断开测试盒重新上电,芯片又会自动进入升级等待状态。接上测试…

2026/10/11 22:22:06 阅读更多 →
股票价格预测机器学习实战:逻辑回归、随机森林与神经网络对比

股票价格预测机器学习实战:逻辑回归、随机森林与神经网络对比

简介:这份资源面向计算机、人工智能、通信工程等专业的在校学生与项目实战学习者,提供一套基于多种机器学习算法进行股票价格预测的Python完整实现,可用于毕业设计、课程设计或期末大作业参考。包内共20个文件,以6个py源码、5个cs…

2026/10/11 22:22:06 阅读更多 →
sig 0.3.0 Windows x64 下载:在终端里交互筛选日志文本

sig 0.3.0 Windows x64 下载:在终端里交互筛选日志文本

sig 0.3.0 Windows x64 下载与交互筛选 获取 sig 0.3.0 Windows x64 压缩包 入口通过草料跳转到夸克分享页,若出现确认页,核对后点击“继续访问”。压缩包名称使用 sigrs,解压后的程序叫 sig.exe;本文针对 0.3.0 旧版本。 文件…

2026/10/11 22:22:06 阅读更多 →
基于滑动窗口去重设计轻量实时事件聚合器:从需求到落地

基于滑动窗口去重设计轻量实时事件聚合器:从需求到落地

之前我负责的一个内部工具项目,代号就叫 rea,全称后来定为 Realtime Event Aggregator。最初催生这个项目的需求并不复杂:多条业务线不停地产生事件,每秒钟少则几千、多则几万条,我们要把这些事件统一收上来&#xff0…

2026/10/11 22:21:04 阅读更多 →

日新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/11 0:00:27 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/11 0:00:27 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 10:45:37 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:53 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/11 14:36:54 阅读更多 →