co takhle použít federované tabulky na jednom ze serverů? vytvořte federované tabulky na základě vzdálených tabulek, které použijete v dotazu, a spusťte dotaz, jako by vaše databáze byla celá lokální. příklad níže z webu MySQL
Postup použití tabulek FEDERATED je velmi jednoduchý. Normálně máte spuštěny dva servery, oba na stejném hostiteli nebo na různých hostitelích. (FEDERATED tabulka může používat jinou tabulku spravovanou stejným serverem, ačkoliv to nemá smysl.)
Nejprve musíte mít na vzdáleném serveru tabulku, ke které chcete přistupovat pomocí tabulky FEDERATED. Předpokládejme, že vzdálená tabulka je ve federované databázi a je definována takto:
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
CHARSET=latin1;
V příkladu je použita tabulka MyISAM, ale tabulka může používat jakýkoli modul úložiště.
Dále vytvořte na místním serveru tabulku FEDERATED pro přístup ke vzdálené tabulce:
CREATE TABLE federated_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=latin1
CONNECTION='mysql://[email protected]_host:9306/federated/test_table';
(Před MySQL 5.0.13 používejte COMMENT spíše než CONNECTION.)