news 2026/4/16 10:46:51

南大通用Gbase 8c dblink功能使用简介

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
南大通用Gbase 8c dblink功能使用简介

Gbase 8c 提供类似 Oracle 的 dblink 功能需要分布式集群版本 GBase8cV5 3.0.3B16 以上和主备集群 gbase8cV5 S5.0.0B24 以上版本使用。

1、创建 dblink 远程连接需要创建用户密钥文件,该步骤可以忽略:

gs_ssh -c "gs_guc generate -S 'db1x@123' -D $GAUSSHOME/bin -o usermapping"
  • 其中-S 表示自定义密钥,可将 password 替换为自定义密钥;
  • 创建之后建议就不要做改动了,如果已经创建了 dblink 之后,再使用改语句重新创建密钥文件,会导致已创建的 dblink 失效无法使用;
  • 如果是单个节点的话,也可以直接执行:gs_guc generate -S 'password' -D $GAUSSHOME/bin -o usermapping

2、创建用户和库:

create user test with sysadmin createrole auditadmin poladmin password 'gbase;123';
create database tdb with template = template0 owner = test encoding = 'UTF-8' LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8' dbcompatibility = 'A';

-- 连接 Oracle 时,如果本地数据库的编码格式 Oracle 不支持的话,会报 warning,建议使用 utf-8 编码格式,否则可能出现数据无法识别的问题(目前有问题的编码格式有:SQL_ASCII、LATIN10、WIN874、MULE_INTERNAL)。

3、登录和连接需要使用 dblink 的数据库,创建 dblink 插件:

  • create extension oracle_fdw;--创建使用 Oracle 的 dblink 插件
  • create extension postgres_fdw;--创建使用 gbase 8c 的 dblink 插件

插件安装命令执行成功后,可以通过\dx 检查插件安装信息,确保对应插件已经安装成功,具体执行可参见下图所示:

用户授权:

4、使用 dblink 的用户需要使用 postgres_fdw / oracle_fdw 的权限,可使用如下语句:

grant usage on foreign data wrapper postgres_fdw to test; grant usage on foreign data wrapper oracle_fdw to test;

5、创建连接 Oracle 的 dblink,需要提前准备好 Oracle 的连接信息:

-- 其中 public 可以忽略,oracle_fdw 是在连接 Oracle 时必须要带的,host、port 代表 ip 和端口,service_name 表示 Oracle 远程数据库的实例名。

-- 创建 dblink 连接后需要等待约 10 秒,需要拉取远程表结构信息。

使用 dblink:

6、创建 gbase 8c 的 dblink:

-- 连接 Oracle 目前只支持查询创建连接的用户的 schema 下面的表,暂不支持查询别的 schema 下的表;

-- 目前在连接 Oracle 数据库时,如果要使用的表没有主键,执行 update、delete 操作会失败;

-- 连接 gbase8c 如果不指定 schema 名,会默认使用用户同名的 schema,要查询别的 schema,需要指定,如下:

select * from schema1.t2@link_name;

7、删除 dblink:

如果远程数据库的表结构发生变化或者新建表,由于 dblink 基于外部表功能实现,需要有要查询的表的结构才可以正常查询,否则会出现问题,目前提供两种给解决方案:

a.使用 sync_dblink_schema('dblink_name')函数同步一下本地存储的外部表结构,使用示例:“select * from sync_dblink_schema('link_name');”

b.设置参数 whale.auto_sync_dblink 为 true,可以在远程数据库发生表结构变化时自动同步表结构信息,由于设置这个参数后,每次操作表都会查询表的结构信息,会有性能损耗,不建议打开改参数,连接 Oracle 时暂不支持打开该参数。

当同步表结构信息时,如果表结构发生变化,会重建本地的外部表,会报一些提示信息,忽略即可,除非是 error 级别信息。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 10:40:54

智能抠图Rembg:社交媒体图片处理指南

智能抠图Rembg:社交媒体图片处理指南 1. 引言:智能万能抠图 - Rembg 在社交媒体内容创作、电商产品展示或数字营销设计中,高质量的图像去背景处理已成为一项基础但关键的需求。传统手动抠图耗时耗力,而AI驱动的自动抠图技术正在…

作者头像 李华
网站建设 2026/4/15 4:28:35

Rembg API开发:构建云端抠图服务

Rembg API开发:构建云端抠图服务 1. 智能万能抠图 - Rembg 在图像处理领域,自动去背景(抠图)一直是高频且关键的需求。无论是电商商品展示、证件照制作,还是设计素材提取,传统手动抠图耗时耗力&#xff0…

作者头像 李华
网站建设 2026/4/12 20:27:42

大模型落地全攻略:从技术实现到商业价值

大模型技术正经历从实验室走向产业界的关键转折期,企业落地过程中面临着技术选型、成本控制与业务适配的三重挑战。本文系统梳理大模型落地的四大核心路径——微调技术、提示词工程、多模态应用与企业级解决方案,通过15代码示例、8个可视化图表、6个Prom…

作者头像 李华
网站建设 2026/4/15 15:44:00

5分钟搞定:GitBash快速下载与最小化配置

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个极简GitBash快速启动工具,功能包括:1) 最小化安装包下载;2) 自动应用基本配置;3) 必备插件一键安装;4) 开发环境…

作者头像 李华
网站建设 2026/4/16 10:39:55

5分钟用快马平台构建自定义atoi函数原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 在快马平台上快速实现一个支持扩展功能的atoi函数原型,要求:1.基本字符串转整数 2.可配置的进制支持(2-36) 3.可选的严格模式(只允许数字) 4.实时输入测试界…

作者头像 李华
网站建设 2026/3/26 0:51:43

KWRT:AI如何革新传统编程工作流

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 创建一个基于KWRT的AI辅助编程工具,能够根据用户输入的自然语言描述自动生成Python代码框架。要求支持以下功能:1) 根据功能描述生成完整函数代码&#xff…

作者头像 李华