Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  CREATE SERVER Statement

15.1.18 创建服务器语句

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

option: {
    HOST character-literal
  | DATABASE character-literal
  | USER character-literal
  | PASSWORD character-literal
  | SOCKET character-literal
  | OWNER character-literal
  | PORT numeric-literal
}

该语句创建了一个用于FEDERATED存储引擎的服务器定义。CREATE SERVER 语句在 mysql 数据库中的 servers 表中创建了一行记录。这条语句需要SUPER特权。

服务器名称server_name 应该是唯一的引用。服务器定义在服务器范围内全局有效,不可能将其限定到某个数据库中。server_name 的最大长度为 64 个字符(超过 64 个字符的名称将被静默截断),并且是大小写不敏感。您可以指定名称作为带引号的字符串。

包装器名称wrapper_name 是一个标识符,可以用单引号括起来。

对于每个option,您必须指定字符字面量或数字字面量。字符字面量是 UTF-8,支持的最大长度为 64 个字符,默认为空字符串。字符串字面量将被静默截断到 64 个字符。数字字面量必须是一个介于 0 和 9999 之间的数字,缺省值为 0。

Note

当前OWNER 选项无效,对服务器连接的所有权或操作没有影响。

创建服务器语句(CREATE SERVER)创建一个可以在创建 CREATE TABLE 语句中使用的 mysql.servers 表的条目。您指定的选项将用来填充 mysql.servers 表中的列。该表的列是 Server_nameHostDbUsernamePasswordPortSocket

例如:

CREATE SERVER s
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'Remote', HOST '198.51.100.106', DATABASE 'test');

一定要指定所有必要的选项,以建立服务器连接。用户名、主机名和数据库名是必需的。其他选项也可能需要,例如密码。

表中的数据可以在创建 FEDERATED 表时使用:

CREATE TABLE t (s1 INT) ENGINE=FEDERATED CONNECTION='s';

更多信息,请见第18.8节,“FEDERATED 存储引擎”

CREATE SERVER 语句会隐式提交。见第15.3.3节,“隐式提交语句”

CREATE SERVER 语句不管使用什么日志格式都不会被写入到二进制日志中。