Différences entre les versions de « MySQL/Réplication »

== Tables fédérées ==
Sur MySQL 8<ref>https://dev.mysql.com/doc/refman/8.0/en/federated-create-server.html</ref> et sur MariaDB depuis la version 10.0<ref>https://mariadb.com/kb/en/federated-storage-engine/</ref>, une alternative à la réplication et au clustering existe. Il s'agit du moteur de stockage ''{{w|Federated}}'', qui permet de de créer une table sur un serveur qui se synchronisent avec la même sur un autre.
 
<source lang=mysql>
CREATE TABLE `ma_table_federee` (
`id` int(10) UNSIGNED NOT NULL
) ENGINE=FEDERATED DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci CONNECTION='mysql://mon_login:mon_mot_de_passe@ip_du_serveur:3306/ma_base/ma_table';
 
</source>
 
=== CREATE SERVER ===
Pour éviter de définir le mot de passe du serveur distant dans la requête SQL, on peut utiliser :
<source lang=mysql>
CREATE SERVER mon_serveur
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'mon_utilisateur', HOST 'mon_serveur', PORT 3306, DATABASE 'federated');
 
CREATE TABLE `ma_table_federee` (
`id` int(10) UNSIGNED NOT NULL
) ENGINE=FEDERATED DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci CONNECTION='mon_serveur/ma_table';
</source>
 
== Références ==