更新时间:2025-05-29 GMT+08:00
分享

CREATE SERVER

功能描述

定义一个新的外部服务器。外部服务器是其他同构数据库信息的载体。

注意事项

OPTIONS中的敏感字段(如password)在使用多层引号时,语义和不带引号的场景是不同的,因此不会被识别为敏感字段进行脱敏。

语法格式

CREATE SERVER server_name
    FOREIGN DATA WRAPPER fdw_name
    [ OPTIONS ( { option_name ' value ' } [, ...] ) ];

参数说明

  • server_name

    server的名称。

    取值范围:长度必须小于等于63字节。

  • fdw_name

    指定外部数据封装器的名称。

    取值范围:dist_fdw,log_fdw,file_fdw。其中log_fdw和file_fdw仅作语法兼容,可以创建外表,无实际使用意义,不做额外使用说明。

  • OPTIONS ( { option_name ' value ' } [, ...] )

    这个子句为服务器指定选项。这些选项通常定义该服务器的连接细节,但是实际的名称和值取决于该服务器的外部数据包装器。

    • 用于指定外部服务器的各类参数。
    除了libpq支持的连接参数外,还额外提供以下参数:
    • fdw_startup_cost

      执行一个外表扫描时的启动耗时估算。这个值通常包含建立连接、远端对请求的分析和生成计划的耗时。默认值为100。取值范围为大于0的实数。

    • fdw_typle_cost

      在远端服务器上对每一个元组进行扫描时的额外消耗。这个值通常表示数据在server间传输的额外消耗。默认值为0.01。取值范围为大于0的实数。

示例

建立一个SERVER,其中file_fdw为数据库中存在的FOREIGN DATA WRAPPER。

--创建SERVER。
gaussdb=# CREATE SERVER my_server FOREIGN DATA WRAPPER file_fdw;

--删除SERVER。
gaussdb=# DROP SERVER my_server;

建立另外一个同构集群的SERVER,其中log_fdw为数据库中存在的FOREIGN DATA WRAPPER。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
--创建SERVER。
gaussdb=# CREATE SERVER server_remote FOREIGN DATA WRAPPER log_fdw OPTIONS 
   (address '10.146.187.231:8000,10.180.157.130:8000' ,
  dbname 'test', 
  username 'test', 
  password '********'
);

--删除SERVER。
gaussdb=# DROP SERVER server_remote;

相关链接

ALTER SERVERDROP SERVER

相关文档