Spec-Zone.ru › MySQL 9.2

18.8.2.2 Создание таблицы FEDERATED с помощью CREATE SERVER

Если вы создаёте несколько FEDERATED таблиц на одном сервере или хотите упростить процесс создания FEDERATED таблиц, вы можете использовать оператор CREATE SERVER для определения параметров подключения к серверу, как и со строкой CONNECTION.

Формат оператора CREATE SERVER:

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

Значение server_name используется в строке подключения при создании новой FEDERATED таблицы.

Например, чтобы создать подключение к серверу, идентичное строке CONNECTION:

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');

Чтобы создать FEDERATED таблицу, использующую это подключение, вы по-прежнему используете ключевое слово CONNECTION, но указываете имя, которое вы использовали в операторе CREATE SERVER.

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';

Имя подключения в этом примере содержит имя подключения (fedlink) и имя таблицы (test_table), к которой нужно подключиться, разделённые слешем. Если вы укажете только имя подключения без имени таблицы, вместо него будет использоваться имя локальной таблицы.

Для получения дополнительной информации об CREATE SERVER, см. Раздел 15.1.19, «Оператор CREATE SERVER».

Оператор CREATE SERVER принимает те же аргументы, что и строка CONNECTION. Оператор CREATE SERVER обновляет строки в mysql.servers таблице. В следующей таблице приведена информация о соответствии между параметрами в строке подключения, параметрами в операторе CREATE SERVER и столбцами в mysql.servers таблице. Для справки, формат строки CONNECTION следующий:

scheme://user_name[:password]@host_name[:port_num]/db_name/tbl_name
Описание CONNECTION строка CREATE SERVER параметр mysql.servers столбец
Схема подключения scheme wrapper_name Wrapper
Удаленный пользователь user_name USER Username
Удаленный пароль password PASSWORD Password
Удаленный хост host_name HOST Host
Удаленный порт port_num PORT Port
Удаленная база данных db_name DATABASE Db

© 2025 Oracle
Licensed under the GPLv2 License.
https://docs.oracle.com/cd/E17952_01/mysql-9.2-en/federated-create-server.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API