# 16.8.2.2 使用 CREATE SERVER 创建 FEDERATED 表

如果您正在创建多个联邦同一服务器上的表,或者如果您想简化创建过程联邦表,您可以使用创建服务器语句来定义服务器连接参数,就像使用联系细绳。

的格式创建服务器声明是:

CREATE SERVER
server_name
FOREIGN DATA WRAPPER wrapper_name
OPTIONS (option [, option] ...)

这*服务器名称*在创建新的连接字符串中使用联邦桌子。

例如,要创建一个与联系细绳:

CONNECTION='mysql://fed_user@remote_host:9306/federated/test_table';

您将使用以下语句:

CREATE SERVER fedlink
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'fed_user', HOST 'remote_host', PORT 9306, DATABASE 'federated');

创建一个联邦使用此连接的表,您仍然使用联系关键字,但指定您在创建服务器陈述。

CREATE TABLE test_table (
    id     INT(20) NOT NULL AUTO_INCREMENT,
    name   VARCHAR(32) NOT NULL DEFAULT '',
    other  INT(20) NOT NULL DEFAULT '0',
    PRIMARY KEY  (id),
    INDEX name (name),
    INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=utf8mb4
CONNECTION='fedlink/test_table';

此示例中的连接名称包含连接的名称 (联通) 和表名 (测试表) 链接到,用斜杠分隔。如果只指定连接名而不指定表名,则使用本地表的表名。

有关更多信息创建服务器, 看第 13.1.18 节,“CREATE SERVER 语句”.

创建服务器语句接受与联系细绳。这创建服务器语句更新mysql.servers桌子。连接字符串中的参数、选项中的选项之间的对应关系见下表创建服务器语句,以及mysql.servers桌子。供参考,格式联系字符串如下:

scheme://user_name[:password]@host_name[:port_num]/db_name/tbl_name
描述 联系细绳 创建服务器选项 mysql.servers柱子
连接方案 方案 包装器名称 包装器
远程用户 用户名 用户 用户名
远程密码 密码 密码 密码
远程主机 主机名 主持人 主持人
远程端口 端口号 港口 港口
远程数据库 数据库名称 数据库 D b