Spec-Zone.ru › MySQL 8.4

18.8.2 Как создать таблицы FEDERATED

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

Для создания таблицы FEDERATED выполните следующие шаги:

  1. Создайте таблицу на удаленном сервере. В качестве альтернативы, запишите определение существующей таблицы, возможно, используя оператор SHOW CREATE TABLE.

  2. Создайте таблицу на локальном сервере с идентичным определением, но добавив информацию о подключении, связывающую локальную таблицу с удаленной.

Например, вы можете создать следующую таблицу на удаленном сервере:

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=MyISAM
DEFAULT CHARSET=utf8mb4;

Для создания локальной таблицы, связанной с удаленной таблицей, доступны два варианта. Вы можете либо создать локальную таблицу и указать строку подключения (содержащую имя сервера, логин, пароль), используемую для подключения к удаленной таблице, используя CONNECTION, либо использовать существующее подключение, которое вы ранее создали с помощью оператора CREATE SERVER.

Важно

При создании локальной таблицы она должна иметь идентичное определение полей, что и удалённая таблица.

Примечание

Вы можете улучшить производительность таблицы FEDERATED, добавив индексы в таблицу на хосте. Оптимизация происходит потому, что запрос, отправляемый на удалённый сервер, включает в себя содержимое фрагмента WHERE и отправляется на удалённый сервер, а затем выполняется локально. Это снижает сетевой трафик, который в противном случае запросил бы всю таблицу с сервера для локальной обработки.

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

Spec-Zone.ru

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