达梦DBLINK(DPI方式)查询报错:MAL系统没有配置或者服务器不是企业版

这篇具有很好参考价值的文章主要介绍了达梦DBLINK(DPI方式)查询报错:MAL系统没有配置或者服务器不是企业版。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.概述

达梦数据库版本:V8.1.2.192 企业版 单实例

DBLINK的创建模式:DPI方式

当前现状:DBLINK创建成功,但是select查询的时候报错:MAL系统没有配置或者服务器不是企业版

2.报错现象

DBLINK的创建语句:create link LINK_DPI_1 connect 'DAMENG' with "SYSDBA" identified by "SYSDBA" using '127.0.0.1:15237';

达梦mal系统没有配置或者服务器不是企业版,服务器,运维,数据库

DBLINK查询报错如下:

达梦mal系统没有配置或者服务器不是企业版,服务器,运维,数据库

3.问题分析

3.1 DBLINK的语法格式

语法格式

CopyCREATE [OR REPLACE] [PUBLIC] LINK [IF NOT EXISTS] <外部链接名> CONNECT ['<连接库类型>'] WITH <登录名> IDENTIFIED BY <登录口令> USING '<外部连接串>' [<OPTION子句>];
<连接库类型> ::= 
	DAMENG | 
	ORACLE | 
	ODBC | 
	DPI
<外部链接串>::=
	<DAMENG外部链接串>| 
	<ORACLE外部链接串> | 
	<ODBC外部链接串> | 
	<DPI外部链接串>
<DAMENG外部链接串>::=[<连接类型>;]<服务器列表>
<连接类型>::= 
	PRIMARY FIRST |
	STANDBY FIRST |
	PRIMARY ONLY |
	STANDBY ONLY
<服务器列表>::=
  	<服务器地址> |
	<服务器地址>{,<服务器地址>}
<服务器地址>::=
	<实例IP地址>/<实例端口号> |
	<MAL IP地址>/<MAL端口号> |
	<实例名>
<ORACLE外部链接串>::= 
    <tsn_name> |
	<description>|
	<IP地址>/<服务名> 
<description>::=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=<IP地址>)(PORT=<端口号>)))(CONNECT_DATA=(SERVICE_NAME=<服务名>)))
<ODBC外部链接串>::= <ODBC数据源DSN>
<DPI外部链接串>::= <IP地址>:<端口号> | <服务名>
<OPTION子句>:: =(<option项>{, <option项>})
<option项>:: =
	LOCAL_CODE=<选项值> |
	CONVERT_MODE=<选项值> |
	BYTES_IN_CHAR=<选项值> |
	DB_TYPE=<选项值> |
	DATA_CHARSET=<选项值>
	CASE_OPT=<选项值>

参数

  1. PUBLIC 此链接对象是否能够被创建者之外的用户引用;

  2. < 外部链接名 > 数据库链接的名称;

  3. < 连接库类型 > 目前只支持 DAMENG、ORACLE、ODBC 或 DPI,默认为 DAMENG;

  4. < 登录名 > 登录用户名称;

  5. < 登录口令 > 登录用户口令;

  6. < 连接类型 > 当 DBLINK 连接到多机环境时,可以设定 < 连接类型 > 和指定多台 < 服务器地址 >。< 连接类型 > 用来指定 DBLINK 将采用何种优先级别连接到 < 服务器列表 > 中的机器,共四种连接类型:PRIMARY FIRST 为主机优先连接;STANDBY FIRST 为备机优先连接;PRIMARY ONLY 为只连主机;STANDBY ONLY 为只连备机。缺省为 PRIMARY FIRST。< 连接类型 > 为可选项,一旦指定了 < 连接类型 >,则必须指定 < 服务器地址 > 数大于等于 2;

  7. <DAMENG 外部链接串 > 支持三种格式,分别对应目标节点在 DMMAL.INI 中的配置项,具体如下:

    ●< 实例 IP 地址 >/< 实例端口号 > 对应 mal_inst_host/mal_inst_por。

    ●<MAL IP 地址 >/<MAL 端口号 > 对应 mal_host/mal_port。

    ● 实例名 对应 mal_inst_name。

  8. <ORACLE 外部链接串 > 可以使用配置的网络服务名 tsn_name(网络服务名需要配置),或者连接描述符 description(连接描述符是网络连接目标特殊格式的描述,它包括网络协议、主库 IP 地址、端口号和服务名),或者 <IP 地址 >/< 服务名 >;

  9. <ODBC 外部链接串 > DSN 需要用户手动配置;

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

  11. <option 项 > 目前所支持的选项与取值如下:

    ● LOCAL_CODE:接口(DPI、OCI、JDBC 等接口)的字符集。若与服务器的字符集不一致,则需要进行转换。可取值为 UTF-8,GBK 或 GB18030。

    ● CONVERT_MODE:表示字符转换过程中对不完整字符的处理规则:0 表示截断不完整字符,不报错;1 表示报错处理。

    ● BYTES_IN_CHAR:整型数字,表示一个字符由多少个字节组成。

    ● DB_TYPE:设置目标数据库类型,目前支持 SQLSERVER、MYSQL、PI、ORACLE、DAMENG、OCEANBASE_ORACLE,仅对 ODBC 类型的 DBLINK 有效。

    ● DATA_CHARSET:设置接口返回给达梦服务器数据的实际字符集。取值为 UTF-8,GBK 或 GB18030。

    ● CASE_OPT:字符串类型,可取值'UPPER'或'LOWER';UPPER 选项表示对象名在发送到远端服务器前,将被自动转换成大写;LOWER 选项则表示将自动转换成小写。

3.2 本文使用DPI的方式

        dpi类型的dblink,达梦数据库软件安装完成后自带DPI库,无需进行其他配置操作即可在数据库中直接创建dblink。
创建语法:
---方式1  IP:端口
create link "链接名" connect 'DPI' with "用户名" identified by "密码" using 'IP:端口';  
---方式2  使用dm_svc.conf中服务名
create link "链接名" connect 'DPI' with "用户名" identified by "密码" using '服务名';  

1)当使用 connect 'DPI' 方式时:DBLINK 查询命令正常使用,无上述报错:

达梦mal系统没有配置或者服务器不是企业版,服务器,运维,数据库

达梦mal系统没有配置或者服务器不是企业版,服务器,运维,数据库

2)当使用 connect 'DAMENG' 方式时:DBLINK 查询命令报错:MAL系统没有配置或者服务器不是企业版

达梦mal系统没有配置或者服务器不是企业版,服务器,运维,数据库

从上面截图可以看出:当<连接库类型>选择是“DAMENG”时,需要配置dmmai.ini文件才行。

详细的DBLINK信息可以查看:外部链接 | 达梦技术文档外部链接对象(LINK)是 DM 中的一种特殊的数据库实体对象,它记录了远程数据库的连接和路径信息,用于建立与远程数据的联系。通过多台数据库主库间的相互通讯,用户可以透明地操作远程数据库的数据,使应用程序看起来只有一个大型数据库。用户远程数据库中的数据请求,都被自动转换为网络请求,并在相应结点上实现相应的操作。用户可以建立一个数据库链接,以说明一个对象在远程数据库中的访问路径。这个链接可以是公用https://eco.dameng.com/document/dm/zh-cn/pm/external-link文章来源地址https://www.toymoban.com/news/detail-826164.html

到了这里,关于达梦DBLINK(DPI方式)查询报错:MAL系统没有配置或者服务器不是企业版的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [电源选项]没有系统散热方式,没有被动散热选项

    笔记本的风扇声音太大,想改成被动散热方式,又不想影响性能。 于是我打开了 控制面板所有控制面板项电源选项 ,点更改计划设置- 更改高级电源设置。 想把散热方式改成被动散热。发现win11中好像没有这个选项了! CMD 打开regedit 找到下面这个位置,把值改成2 地址为:

    2024年02月07日
    浏览(45)
  • python链接Oracle报错 DPI-1047解决方法

    这个错误通常是由于系统无法找到正确的 Oracle 客户端库文件导致的。下面是一些可能的解决方法: 检查系统中是否已经安装了 Oracle 客户端程序,并且版本是兼容的。 确认已经设置了 LD_LIBRARY_PATH 环境变量,如果没有设置,需要将 Oracle 的库目录添加到该环境变量中,例如:

    2023年04月10日
    浏览(30)
  • Oracle和达梦:连接多行查询结果

    使用LISTAGG函数,您可以将多行数据连接成一个字符串,并指定分隔符进行分隔。这在需要将多行数据合并为单个字符串的情况下非常有用,例如将多个值合并为逗号分隔的列表。 函数介绍 按查询顺序连接 按查询顺序反向连接

    2024年02月08日
    浏览(46)
  • winform使用SetParent 嵌入excel,打开的excel跟随dpi 25%*125%缩放了两次,目前微软官方没有好的解决方案,为什么

    双重缩放问题在将 Excel 嵌入到 WinForm 中时确实可能会出现,这是因为两个不同的应用程序(WinForm 和 Excel)之间的 DPI 缩放逻辑不一致,导致双重缩放的结果。 在 Windows 操作系统中,DPI 缩放是一种全局的设置,用于适应高 DPI 显示设备,从而提高显示元素的大小。当您将 Ex

    2024年02月14日
    浏览(47)
  • 关于访问达梦数据库报错的常见问题

    【问题描述】 : 连接数据库时出现报错:登录服务器失败。 客户端管理工具连接数据库报错:错误号 6001,错误消息:网络通信异常。如下图所示: ​ 或命令行连接数据库报错:socket 连接失败或 Create SOCKET connection failure。如下图所示: ​ 【问题分析】 : 使用 DM 数据库时

    2024年02月05日
    浏览(143)
  • C# 获取系统DPI缩放比例以及分辨率大小

    虚拟屏幕是指所有物理屏幕组合成的逻辑屏幕,可以用于跨越多个物理屏幕显示应用程序。 这两个方法都可以在 正常情况 下获取到屏幕的分辨率 - 当桌面缩放比例不是 100% 的时候获取到的分辨率就是“真实”的分辨率了,而是按缩放比例调整以后屏幕显示的内容的宽度和高

    2023年04月26日
    浏览(45)
  • 达梦数据库——数据迁移sqlserver-dm报错问题整理

    报错情况一:Sql server迁移达梦连接报错’驱动程序无法通过使用安全套接字Q层(SSL)加密与SQL Server 建立安全连接。错误:“The server selected protocol version TLS10 is not accepted by client preferencesITLS127‘ 原因:历史版本的SOL SERVER服务端默认使用TLS1.0版本协议对外提供服务,因安全问题

    2024年02月19日
    浏览(55)
  • C#调用SqlSugar操作达梦数据库报错“无效的表或视图名”

      安装达梦数据库后,使用SqlSugar连接测试数据库并基于DBFirst方式创建数据库表对应的类,主要代码如下:   运行到CreateClassFile函数时报如下错误:   通过达梦管理工具查看数据库,PERSON数据库下有ADDRESS表,不清楚为什么报错。   百度错误信息,检索结果中介绍可

    2024年01月25日
    浏览(47)
  • 使用Process Monitor探测Windows系统高DPI缩放设置的注册表项

    目录 1、在高显示比例下部分软件界面显示模糊问题 2、如何设置才能使得软件显示的清晰一些?

    2024年02月03日
    浏览(42)
  • 当前服务器版本不支持该功能,请联系经销商升级服务器 - - 达梦数据库报错

    某项目使用标准版数据库中,使用insert into 正常操作表,插入数据时报错,表为普通表。 -539:当前服务器版本不支持该功能,请联系经销商升级服务器

    2024年02月13日
    浏览(51)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包