Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

MySQL 8.3 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 语句在 mysql.servers 表中创建了一条记录,该记录可以在使用 CREATE TABLE 语句创建 FEDERATED 表时使用。您指定的选项将用于填充 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 存储引擎”

创建服务器 导致隐式提交。请参阅 第 15.3.3 节,“导致隐式提交的语句”

创建服务器 不会被写入二进制日志,不管当前使用的是什么日志格式。