功能描述
定义一个新的外部服务器。
语法格式
CREATE SERVER server_name
FOREIGN DATA WRAPPER fdw_name
OPTIONS ( { option_name ' value ' } [, ...] ) ;
参数说明
server_name
server 的名称。
取值范围:长度必须小于等于63。
fdw_name
GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
949
指定外部数据封装器的名称。
取值范围:dist_fdw,hdfs_fdw,log_fdw,file_fdw,mot_fdw。
OPTIONS ( { option_name ' value ' } [, …] )
这个子句为服务器指定选项。
这些选项通常定义该服务器的连接细节,
但是实际的名称
和值取决于该服务器的外部数据包装器。
oracle_fdw 支持的options 包括:
dbserver
远端Oracle 数据库的连接字符串。
isolation_level (默认值为serializable)
oracle 数据库的事务隔离级别。
取值范围:serializable、read_committed 、read_only
mysql_fdw 支持的options 包括:
host (默认值为127.0.0.1)
MySQL Server/MariaDB 的地址。
port (默认值为3306)
MySQL Server/MariaDB 侦听的端口号。
postgres_fdw 支持的options 同libpq 支持的连接参数一致,可参考链接字符。需要
注意的是,以下几个options 不支持设置:
user 和password
用户名和密码将在创建user mapping 时指定。
client_encoding
将自动获取本地server 的编码方式并设置该值。
application_name
GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
950
总是设置成postgres_fdw。
用于指定外部服务器的各类参数,详细的参数说明如下所示。
encrypt
是否对数据进行加密,该参数仅支持type 为OBS 时设置。默认值为on。
取值范围:
on 表示对数据进行加密,使用HTTPS 协议通信。
off 表示不对数据进行加密,使用HTTP 协议通信。
access_key
OBS 访问协议对应的AK 值(OBS 云服务界面由用户获取)
,创建外表时AK 值会加密
保存到数据库的元数据表中。该参数仅支持type 为OBS 时设置。
secret_access_key
OBS 访问协议对应的SK 值(OBS 云服务界面由用户获取)
,创建外表时SK 值会加密
保存到数据库的元数据表中。该参数仅支持type 为OBS 时设置。
除了libpq 支持的连接参数外,还额外提供3 个options:
use_remote_estimate
控制postgres_fdw 是否发出EXPLAIN 命令以获取运行消耗估算。默认值为false。
fdw_startup_cost
执行一个外表扫描时的启动耗时估算。
这个值通常包含建立连接、
远端对请求的分析和
生成计划的耗时。默认值为100。
fdw_typle_cost
在远端服务器上对每一个元组进行扫描时的额外消耗。这个值通常表示数据在server
间传输的额外消耗。默认值为0.01。
示例
GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
951
创建server。
gbase=# create server my_server foreign data wrapper log_fdw;
CREATE SERVER
相关命令
ALTER SERVER,DROP SERVER