CREATE SERVER 语句
1. CREATE SERVER server_name
2. FOREIGN DATA WRAPPER wrapper_name
3. OPTIONS (option [, option] ...)
4.
5. option: {
6. HOST character-literal
7. | DATABASE character-literal
8. | USER character-literal
9. | PASSWORD character-literal
10. | SOCKET character-literal
11. | OWNER character-literal
12. | PORT numeric-literal
13. }
此语句创建用于 FEDERATED 存储引擎的服务器定义。CREATE SERVER 语句在 mysql 数据库的 servers 表中创建一行新记录。此语句需要 SUPER 权限。
server_name 是对服务器的唯一引用。服务器定义在服务器范围内是全局的,不可能将服务器定义限定于特定的数据库。server_name 的最大长度为64个字符(超过64个字符的名称将自动截断),并且不区分大小写。可以将名称指定为带引号的字符串。
wrapper_name 是一个标识符,可以用单引号引起来。
对于每个 option,必须指定字符字面量或数字字面量。字符字面量为UTF-8,最大支持64个字符,默认为空(empty)字符串。字符串字面量将自动截断为64个字符。数字字面量必须是介于0和9999之间的数字,默认值为0。
注意
OWNER 选项当前未应用,并且对所创建的服务器连接的所有权或操作没有影响。
CREATE SERVER 语句在 mysql.servers 表中创建一条记录,以后在创建 FEDERATED 存储引擎表时可以与 CREATE TABLE 语句一起使用。指定的选项将用于填充 mysql.servers 表的列。表中的列是Server_name、Host、Db、Username、Password、Port和Socket。
例如:
1. CREATE SERVER s
2. FOREIGN DATA WRAPPER mysql
3. OPTIONS (USER 'Remote', HOST '198.51.100.106', DATABASE 'test');
请确保指定与服务器建立连接所需的所有选项。用户名、主机名和数据库名是必需的。可能还需要其他选项,例如密码。
创建到 FEDERATED 表的连接时,可以使用表中存储的数据:
CREATE TABLE t (s1 INT) ENGINE=FEDERATED CONNECTION='s';
CREATE SERVER 语句会导致隐式提交。
无论使用何种日志格式,CREATE SERVER 都不会写入二进制日志。
官方文档地址: https://dev.mysql.com/doc/refman/8.0/en/create-server.html