openGauss学习笔记-97 openGauss 数据库管理-访问外部数据库-dblink

文章目录

    • [openGauss学习笔记-97 openGauss 数据库管理-访问外部数据库-dblink](#openGauss学习笔记-97 openGauss 数据库管理-访问外部数据库-dblink)
      • [97.1 编译dblink](#97.1 编译dblink)
      • [97.2 常用的dblink函数](#97.2 常用的dblink函数)
      • [97.3 注意事项](#97.3 注意事项)

openGauss的fdw实现的功能是各个openGauss数据库及远程服务器(包括数据库、文件系统)之间的跨库操作。目前支持的远程服务器类型包括Oracle、MySQL(MariaDB)、openGauss(postgres_fdw)、file_fdw 、dblink。

dblink是一个可以在一个openGauss数据库会话中连接到其它openGauss数据库的工具,同libpq支持的连接参数一致,可参考**链接参数**。openGauss默认不编译dblink,下面依次介绍如何编译和使用dblink。

当前dblink的源码放在contrib/dblink目录中。在编译安装完openGauss数据库之后,如果用户需要使用dblink,只需要进入上述目录执行如下即可完成dblink的编译安装。

bash 复制代码
make
make install

97.2 常用的dblink函数

  • 加载dblink扩展

    sql 复制代码
    CREATE Extension dblink;
  • 打开一个到远程数据库的持久连接

    sql 复制代码
    SELECT dblink_connect(text connstr);
  • 关闭一个到远程数据库的持久连接

    sql 复制代码
    SELECT dblink_disconnect();
  • 在远程数据库执行查询

    sql 复制代码
    SELECT * FROM dblink(text connstr, text sql);
  • 在远程数据库执行命令

    sql 复制代码
    SELECT dblink_exec(text connstr, text sql);
  • 返回所有打开的命名dblink连接的名称

    sql 复制代码
    SELECT dblink_get_connections();
  • 发送一个异步查询到远程数据库

    sql 复制代码
    SELECT dblink_send_query(text connname, text sql);
  • 检查连接是否正在忙于一个异步查询

    sql 复制代码
    SELECT dblink_is_busy(text connname);
  • 删除扩展

    sql 复制代码
    DROP Extension dblink;

97.3 注意事项

目前dblink仅支持openGauss数据库访问另一个openGauss数据库,不支持openGauss数据库访问PostgreSQL数据库。

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

相关推荐
qq_2131578913 分钟前
(c#)unity中sqlite多线程同时开启事务会导致非常慢
数据库·sqlite·c#
北极无雪19 分钟前
Spring源码学习(拓展篇):SpringMVC中的异常处理
java·开发语言·数据库·学习·spring·servlet
666xiaoniuzi40 分钟前
深入理解 C 语言中的内存操作函数:memcpy、memmove、memset 和 memcmp
android·c语言·数据库
正在走向自律1 小时前
3.使用条件语句编写存储过程(3/10)
数据库·存储过程·安全架构
YONG823_API1 小时前
电商平台数据批量获取自动抓取的实现方法分享(API)
java·大数据·开发语言·数据库·爬虫·网络爬虫
小小不董1 小时前
图文深入理解Oracle DB Scheduler
linux·运维·服务器·数据库·oracle
大拇指的约定2 小时前
数据库(MySQL):使用命令从零开始在Navicat创建一个数据库及其数据表(三),单表查询
数据库·mysql·oracle
阳光阿盖尔2 小时前
redis——哨兵机制
数据库·redis·缓存·主从复制·哨兵
小小娥子2 小时前
【Redis】Hash类型的常用命令
数据库·spring boot·redis
盒马盒马2 小时前
Redis:cpp.redis++通用接口
数据库·c++·redis