达梦到达梦的外部链接dblink(DM-DM DBLINK)

一. 使用场景:

部链接对象(LINK)是 DM 中的一种特殊的数据库实体对象,它记录了远程数据库的连接和路径信息,用于建立与远程数据的联系。通过多台数据库主库间的相互通讯,用户可以透明地操作远程数据库的数据,使应用程序看起来只有一个大型数据库。用户远程数据库中的数据请求,都被自动转换为网络请求,并在相应结点上实现相应的操作。用户可以建立一个数据库链接,以说明一个对象在远程数据库中的访问路径。这个链接可以是公用的(数据库中所有用户使用),也可以是私有的(只能被某个用户使用)。

用户可以通过外部链接对远程数据库的表进行查询和增删改操作,以及本地调用远程的存储过程。

二 前置条件:
准备两台数据库服务器 A、B(目前只支持同平台,不支持跨平台建数据库连接),均安装了 DM 数据库,网络必须互通。
两个服务器间网络互通
两个服务器都已安装好达梦数据库。且 A 和 B 的实例名不能相同。两台数据库字符集要一致。
在这里插入图片描述

三 配置:

  1. 在两台机器的数据库实例下面创建dmmal.ini 文件
[dmdba@10-8-148-9 DAMENG1]$ vi dmmal.ini
[dmdba@10-8-148-9 DAMENG1]$ cat dmmal.ini
[DMSERVER1]     #自定义
MAL_INST_NAME = DMSERVER1       #实例名和dm.ini中的INSTANCE_NAME保持一致
MAL_INST_HOST = 10.8.148.9      #对外开放的服务IP地址
MAL_INST_PORT = 52336            #对外开放的服务端口和dm.ini中的PORT_NUM保持一致
MAL_HOST = 10.8.148.9           #系统监听TCP连接IP地址
MAL_PORT = 15252                        #系统监听TCP连接端口[DMSERVER]      #自定义
MAL_INST_NAME = DMSERVER
MAL_INST_HOST = 10.8.148.7
MAL_INST_PORT = 52336
MAL_HOST = 10.8.148.7
MAL_PORT = 15253
[dmdba@10-8-148-7 DAMENG]$ vi dmmal.ini
[dmdba@10-8-148-7 DAMENG]$ cat dmmal.ini
[DMSERVER1]     #自定义
MAL_INST_NAME = DMSERVER1       #实例名和dm.ini中的INSTANCE_NAME保持一致
MAL_INST_HOST = 10.8.148.9      #对外开放的服务IP地址
MAL_INST_PORT = 52336            #对外开放的服务端口和dm.ini中的PORT_NUM保持一致
MAL_HOST = 10.8.148.9           #系统监听TCP连接IP地址
MAL_PORT = 15252                        #系统监听TCP连接端口[DMSERVER]      #自定义
MAL_INST_NAME = DMSERVER
MAL_INST_HOST = 10.8.148.7
MAL_INST_PORT = 52336
MAL_HOST = 10.8.148.7
MAL_PORT = 15253[dmdba@10-8-148-7 DAMENG]$
  1. 分别切换到数据库实例的目录,修改dm.ini文件
    在这里插入图片描述
    3:验证
[dmdba@10-8-148-9 DAMENG1]$ more /home/dmdba/data/DAMENG1/dm.ini|grep -E "INSTANCE_NAME|MAL_INI"INSTANCE_NAME                   = DMSERVER1                                     #Instance nameMAL_INI                         = 1                     #dmmal.ini
[dmdba@10-8-148-9 DAMENG1]$
[dmdba@10-8-148-7 bin]$ more /data/DAMENG/dm.ini|grep -E "INSTANCE_NAME|MAL_INI"INSTANCE_NAME                   = DMSERVER                                    #Instance nameMAL_INI                         = 1                     #dmmal.ini
[dmdba@10-8-148-7 bin]$
  1. 重启服务
 [dmdba@10-8-148-9 bin]$ ./DmServiceDMSERVER1 restart
DmServiceCATHY_S service is stopped.
Starting DmServiceCATHY_S:                                 [ OK ]
[dmdba@10-8-148-9 bin]$
[dmdba@10-8-148-7 bin]$ ./DmServiceDMSERVER2 restart
DmServiceDMSERVER2 service is stopped.
Starting DmServiceDMSERVER2:                               [ OK ]
  1. 创建测试表
    在A主机创建一个表test用来让B主机用外部连接进行操作
[dmdba@10-8-148-9 bin]$ ./disql SYSDBA/SYSDBA@LOCALH服务器[LOCALHOST:52336]:处于普通打开状态
登录使用时间 : 1.677(ms)
disql V8
SQL> Create table test(c1 int,c2 int);
操作已执行
已用时间: 16.136(毫秒). 执行号:55200.
SQL>
  1. 创建dblink

在B主机建立外部连接操作A主机
create public link 外部连接名 connect with A主机登录用户 identified by A主机登录用户密码 using ‘A主机ip/a主机系统监听TCP连接端口’

disql V8
SQL> create public link dmlink1 connect with "SYSDBA" identified by "SYSDBA" using '10.8.148.9/52336';
操作已执行
已用时间: 11.755(毫秒). 执行号:501.
SQL> insert into test@dmlink1 values(1,1)
2   ;
insert into test@dmlink1 values(1,1);
操作已执行
SQL> commit;
操作已执行

在A服务器上查询数据,测试成功:

[dmdba@10-8-148-9 bin]$ ./disql SYSDBA/SYSDBA@LOCALHOST:52336服务器[LOCALHOST:52336]:处于普通打开状态
登录使用时间 : 1.203(ms)
disql V8
SQL> select * from test;行号     C1          C2
---------- ----------- -----------
1          1           1已用时间: 0.889(毫秒). 执行号:55400.
SQL>

————————————————
版权声明:本文为CSDN博主「qq_37829708」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_37829708/article/details/128494726
两台服务器,其中一个为目的主机 A,另一个为测试机 B;分别在这两台服务器上进入数据库安装目录下的库目录里修改 dm.ini 文件:MAL_INI=1,实例名 INSTANCE_NAME 要对应,且配置 dmmal.ini(如无此文件,新建此文件)如下所示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/237315.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java Web3J :使用web3j调用自己的智能合约的方法(教程)

代码世界有很多令人大呼小叫的技巧!有的代码像魔术师一样巧妙地隐藏了自己,有的像魔法师一样让你眼花缭乱,还有的像瑜伽大师一样灵活自如。它们让我们惊叹不已,让我们觉得自己仿佛置身于编码的魔幻世界。快来分享你见过哪些令你膛目结舌的代码技巧吧! 目录 web3j调用智能合…

前端开发新趋势:Web3 与虚拟现实的技术融合

在当今互联网技术日新月异的时代,Web技术也在不断地发展和变革。从前端开发的角度来看,新技术的涌现和旧技术的迭代让前端开发者们面临着前所未有的挑战和机遇。Web3 与虚拟现实(VR)的技术融合,正是当前前端开发领域的…

​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化

2022年亚马逊云科技re:Invent盛会于近日在拉斯维加斯成功召开,吸引了众多业界精英和创新者。亚马逊云科技边缘服务副总裁Jan Hofmeyr在演讲中分享了关于亚马逊云科技海外服务器边缘计算的最新发展和创新成果,引发与会者热烈关注。 re:Invent的核心主题是…

九、W5100S/W5500+RP2040之MicroPython开发<HTTPOneNET示例>

文章目录 1. 前言2. 平台操作流程2.1 创建设备2.2 创建数据流模板 3. WIZnet以太网芯片4. 示例讲解以及使用4.1 程序流程图4.2 测试准备4.3 连接方式4.4 相关代码4.5 烧录验证 5. 注意事项6. 相关链接 1. 前言 在这个智能硬件和物联网时代,MicroPython和树莓派PICO正…

Kubernetes 的用法和解析 -- 7

k8s之共享存储pv&pvc 1 存储资源管理 在基于k8s容器云平台上,对存储资源的使用需求通常包括以下几方面: 1.应用配置文件、密钥的管理; 2.应用的数据持久化存储; 3.在不同的应用间共享数据存储; k8s的Volume抽象概…

Curl多线程https访问,崩溃问题修复

Curl: &#xfffd;&#xfffd;: SSL and multithread crash on windows, how to use mutex on windows? SSL and multithread crash on windows, how to use mutex on windows? From: mao mao <lmjrd_at_hotmail.com> Date: Fri, 25 Nov 2016 09:50:48 0000 Thank…

昨天下午学习的是mysql-约束条件 数据类型

常见的数据类型 整数 浮点型 日期 字符串文本类型 比如id后面要是int类型的 手机号就得是bigint 或 varchar 主键 primary key 自增 auto_increment 非空notnull 唯一约束 unique 参照refernces 用法 create database System; use System; create table stude…

【昆明*线上同步】最新ChatGPT/GPT4科研实践应用与AI绘图技术及论文高效写作

详情点击查看福利&#xff1a;【昆明*线上同步】最新ChatGPT/GPT4科研实践应用与AI绘图技术及论文高效写作 目标&#xff1a; 1、熟练掌握ChatGPT提示词技巧及各种应用方法&#xff0c;并成为工作中的助手。 2、通过案例掌握ChatGPT撰写、修改论文及工作报告&#xff0c;提供…

AI Native工程化:百度App AI互动技术实践

作者 | GodStart 导读 随着AI浪潮的兴起&#xff0c;越来越多的应用都在利用大模型重构业务形态&#xff0c;在设计和优化Prompt的过程中&#xff0c;我们发现整个Prompt测评和优化周期非常长&#xff0c;因此&#xff0c;我们提出了一种Prompt生成、评估与迭代的一体化解决方案…

java 非常好用的一个缓存(Google Guava的Cache)

基本每个web项目都少不了缓存&#xff0c;通常很时候都会选择redis作缓存&#xff0c;或者自己用map轻松实现&#xff0c;但上面这两种缓存有时满足不了需求&#xff0c;有时觉得redis作缓存有点重&#xff0c;而map手功实现又太轻或功能不足时&#xff08;缓存时过期实现&…

NB-IOT、4G-LTE信号优劣判定参考指标

名词释意 &#xff08;1&#xff09;RSRP&#xff1a;信号接收功率&#xff0c;反映当前路径信道损耗程度&#xff0c;主要作为小区覆盖的测量和小区重选重要依据. &#xff08;2&#xff09;RSRQ&#xff1a;信号接收质量&#xff0c;反映当前路径网络负荷及干扰变化点&#x…

【XML】TinyXML 详解

1、简介 优点&#xff1a; TinyXML 是一个简单、小型的 C XML 解析器&#xff0c;可以轻松集成到项目中。 TinyXML 解析 XML 文档&#xff0c;并根据该文档构建可读取、修改和保存的文档对象模型 (DOM) TinyXML 是在 ZLib 许可下发布的&#xff0c;因此可以在开源或商业代码中…

【Flink-Kafka-To-ClickHouse】使用 Flink 实现 Kafka 数据写入 ClickHouse

【Flink-Kafka-To-ClickHouse】使用 Flink 实现 Kafka 数据写入 ClickHouse 1&#xff09;导入相关依赖2&#xff09;代码实现2.1.resources2.1.1.appconfig.yml2.1.2.log4j.properties2.1.3.log4j2.xml2.1.4.flink_backup_local.yml 2.2.utils2.2.1.DBConn2.2.2.CommonUtils2.…

zynqmp Linux + 裸机 (A53-0 Linux,A53-1 2 3 裸机大数据量实时处理,R5-0 协议处理,R5-1 屏幕显示逻辑等)填坑笔记

fpga 和arm 采用预留内存的方式&#xff0c;采用neon 协处理器只能做到 250M/S 的速度&#xff0c;预留内存采用mmap的方式&#xff0c;当读取内存页的时候采用缺页中断的方式&#xff0c;导致速度拖沓而且预留内存没有进行Linux系统的内存管理&#xff08;在系统内 memcpy的速…

使用代理服务器和Beautiful Soup爬取亚马逊

概述 Beautiful Soup 是一个用于解析 HTML 和 XML 文档的 Python 库&#xff0c;它能够从网页中提取数据&#xff0c;并提供了一些简单的方法来浏览文档树、搜索特定元素以及修改文档的内容。在本文中&#xff0c;我们将介绍如何使用代理服务器和Beautiful Soup库来爬取亚马逊…

融资项目——vue之双向数据绑定

上一篇文章中使用的v-bind是单向绑定方法&#xff0c;即数据改变&#xff0c;网页相应的视图发生改变&#xff0c;但是网页视图发生改变其相关联的数据不会发生改变。但是双向数据绑定不同之处在于网页视图发生改变其相关联的数据也会发生改变。Vue可以使用v-model进行双向数据…

【SpringBoot快速入门】(1)SpringBoot的开发步骤、工程构建方法以及工程的快速启动详细讲解

目录 SpringBoot简介1 SpringBoot快速入门1.1 开发步骤1.1.1 创建新模块1.1.2 创建 Controller1.1.3 启动服务器1.1.4 进行测试 2 对比3 官网构建工程3.1 进入SpringBoot官网3.2 选择依赖3.3 生成工程 4 SpringBoot工程快速启动4.1 问题导入4.2 打包4.3 启动 之前我们已经学习的…

C++20形式的utf-8字符串转宽字符串,不依赖编译器编码形式

默认的char[]编码都是要看编译器编译选项的&#xff0c;你选了ANSI那它就是ANSI&#xff0c;你选了UTF8那它就是UTF8. 【注意&#xff1a;经典DevC只支持ANSI编码&#xff08;痛苦&#xff09;&#xff1b;上图是小熊猫DevC&#xff0c;则有这个选项】 这一点对我的代码造成了…

DevOps系列文章 : 使用dpkg命令打deb包

创建一个打包的目录&#xff0c;类似rpmbuild&#xff0c;这里创建了目录deb_build mkdir deb_build目标 我有一个hello的二进制文件hello和源码hello.c, 准备安装到/opt/helloworld目录中 步骤 在deb_build目录创建一个文件夹用于存放我的安装文件 mkdir helloworld在he…

js中实现vue2-org-tree添加自定义拖拽功能

一. 主要思路 1.1通过绑定自定义的指令&#xff0c;获取需要拖动的父子元素&#xff0c; 1.2.添加鼠标按下事件onmousedown&#xff0c;计算出鼠标的相对位置odiv.offsetLeft与odiv.offsetTop&#xff0c; 1.3.鼠标移动事件onmousemove当鼠标移动时触发&#xff0c;移动的时…