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.18, «Оператор 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.