A engine de armazenamento do MySQL Federated, é um mecanismo de armazenamento que permite ao usuário criar uma tabela que seja uma representação local de uma tabela externa (remota).
Ele utiliza a API da biblioteca cliente MySQL como um transporte de dados, tratando a origem de dados remotos da mesma forma que outros mecanismos de armazenamento tratam fontes de dados locais, sejam arquivos MYD (MyISAM), memória (Cluster, Heap) ou tablespace (InnoDB).
Cada tabela Federada definida lá é uma .frm. Os dados reais podem existir em uma instância MySQL local ou remota.
Quando a gravação de dados em uma determinada tabela exceder a capacidade da instância local do MySQL em disco, o MySQL desenvolveu o mecanismo de armazenamento FEDERATED.
Com a engine as gravações em uma determinada tabela podem ser enviadas pela rede para uma segunda instância do MySQL.
Dessa forma, é possível escalar suas gravações em vários servidores MySQL, sem precisar codificar seus aplicativos para se conectarem a vários servidores.
Há muitos problemas com o mecanismo de armazenamento FEDERATED. Ele foi criado para ser um proxy para gravações em uma tabela, mas não para servir como um front-end mágico para todos os tipos de consultas SELECT.
Há muitos problemas não resolvidos com o acesso a consultas remotas por meio da interface FEDERATED.
CREATE TABLE `T1`(`A` VARCHAR(100),UNIQUE KEY(`A`(30))) ENGINE=FEDERATED CONNECTION='MYSQL://usuario:senha@127.0.0.1:3306/DATABASE/TABELA_REMOTA';
A seguir indicamos os recursos que a engine Mysql FEDERATED possui e não suporta: