Heim >Datenbank >MySQL-Tutorial >Wie kann ich MySQL-Tabellen über verschiedene Server hinweg verbinden?
Zwei Tabellen von verschiedenen Servern in MySQL mit Federated Engine abfragen
Frage:
Ist Es ist möglich, Tabellen von zwei verschiedenen MySQL-Servern auf einmal zu verbinden Abfrage?
Lösung:
Ja, es ist mit der MySQL Federated Engine möglich.
Implementierung:
Um Tabellen von zwei verschiedenen Servern zu verbinden, müssen Sie zunächst Verbundtabellen erstellen, die auf die Remote-Tabellen verweisen. Die föderierten Tabellen müssen die gleiche Struktur wie die Originaltabellen haben.
Hier ist ein Beispiel für die Erstellung einer föderierten Tabelle mit dem Namen federated_table1, die auf eine Remote-Tabelle mit dem Namen table1 auf Server1 verweist:
CREATE TABLE federated_table1 ( 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=latin1 CONNECTION='mysql://fed_user@server1:3306/db1/table1';
Sobald Sie Nachdem Sie die Verbundtabellen erstellt haben, können Sie diese wie gewohnt verknüpfen Tabellen:
SELECT a.field1, b.field2 FROM federated_table1 a INNER JOIN federated_table2 b ON a.field1 = b.field2;
Hinweis:
Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Tabellen über verschiedene Server hinweg verbinden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!