## CREATE SERVER

CREATE SERVER — define a new foreign server

## Synopsis

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

## Description

`CREATE SERVER` defines a new foreign server. The user who defines the server becomes its owner.

A foreign server typically encapsulates connection information that a foreign-data wrapper uses to access an external data resource. Additional user-specific connection information may be specified by means of user mappings.

The server name must be unique within the database.

Creating a server requires `USAGE` privilege on the foreign-data wrapper being used.

## Parameters

`server_name`

  The name of the foreign server to be created.

`server_type`

  Optional server type, potentially useful to foreign-data wrappers.

`server_version`

  Optional server version, potentially useful to foreign-data wrappers.

`fdw_name`

  The name of the foreign-data wrapper that manages the server.

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

  This clause specifies the options for the server. The options typically define the connection details of the server, but the actual names and values are dependent on the server's foreign-data wrapper.

## Notes

When using the dblink module, a foreign server's name can be used as an argument of the dblink_connect function to indicate the connection parameters. It is necessary to have the `USAGE` privilege on the foreign server to be able to use it in this way.

## Examples

Create a server `myserver` that uses the foreign-data wrapper `postgres_fdw`:

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

See postgres_fdw for more details.

## Compatibility

`CREATE SERVER` conforms to ISO/IEC 9075-9 (SQL/MED).

## See Also

ALTER SERVER, DROP SERVER, CREATE FOREIGN DATA WRAPPER, CREATE FOREIGN TABLE, CREATE USER MAPPING