Skip to content

CREATE SERVER

CREATE SERVER — 定义一个新的外部服务器

语法

CREATE SERVER [ IF NOT EXISTS ] server_name [ TYPE 'server_type' ] [ VERSION 'server_version' ]
    FOREIGN DATA WRAPPER fdw_name
    [ OPTIONS ( option 'value' [, ... ] ) ]

描述

CREATE SERVER定义一个新的外部服务器。定义服务器的用户将成为其所有者。

外部服务器通常封装连接信息,外部数据封装器使用该信息来访问外部数据资源。可以通过用户映射指定其他用户特定的连接信息。

服务器名称在数据库中必须唯一。

创建服务器需要对正在使用的外部数据包装器具有USAGE权限。

参数

IF NOT EXISTS

如果同名服务器已存在,则不抛出错误。在这种情况下,会发出通知。请注意,无法保证现有服务器与将要创建的服务器完全相同。

server_name

要创建的外部服务器的名称。

server_type

可选的服务器类型,可能对外部数据包装器有用。

server_version

可选的服务器版本,可能对外部数据包装器有用。

fdw_name

管理服务器的外部数据包装器的名称。

OPTIONS ( option 'value' [, ... ] )

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

备注

使用dblink模块时,外部服务器的名称可以用作dblink_connect函数的参数,以指示连接参数。必须对外部服务器具有USAGE权限才能以这种方式使用它。

如果外部服务器支持排序下推,则它必须与本地服务器具有相同的排序顺序。

示例

创建一个使用外部数据包装器postgres_fdw的服务器myserver

CREATE SERVER myserver FOREIGN DATA WRAPPER postgres_fdw OPTIONS (host 'foo', dbname 'foodb', port '5432');

有关更多详细信息,请参见postgres_fdw

兼容性

CREATE SERVER符合 ISO/IEC 9075-9 (SQL/MED)。

另请参见

ALTER SERVERDROP SERVERCREATE FOREIGN DATA WRAPPERCREATE FOREIGN TABLECREATE USER MAPPING