सर्वरों में से किसी एक पर फ़ेडरेटेड टेबल का उपयोग करने के बारे में कैसे? क्वेरी में उपयोग की जाने वाली दूरस्थ तालिकाओं के आधार पर फ़ेडरेटेड टेबल बनाएं और अपनी क्वेरी को ऐसे चलाएं जैसे कि आपका डेटाबेस सभी स्थानीय था। MySQL साइट से नीचे दिया गया उदाहरण
संघीय तालिकाओं का उपयोग करने की प्रक्रिया बहुत सरल है। आम तौर पर, आपके पास दो सर्वर चल रहे होते हैं, या तो एक ही होस्ट पर या अलग-अलग होस्ट पर। (एक संघीय तालिका के लिए एक ही सर्वर द्वारा प्रबंधित किसी अन्य तालिका का उपयोग करना संभव है, हालांकि ऐसा करने का कोई मतलब नहीं है।)
सबसे पहले, आपके पास दूरस्थ सर्वर पर एक तालिका होनी चाहिए जिसे आप एक संघीय तालिका का उपयोग करके एक्सेस करना चाहते हैं। मान लीजिए कि दूरस्थ तालिका फ़ेडरेटेड डेटाबेस में है और इसे इस तरह परिभाषित किया गया है:
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;
उदाहरण MyISAM तालिका का उपयोग करता है, लेकिन तालिका किसी भी संग्रहण इंजन का उपयोग कर सकती है।
इसके बाद, दूरस्थ तालिका तक पहुँचने के लिए स्थानीय सर्वर पर एक संघीय तालिका बनाएँ:
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';
(MySQL 5.0.13 से पहले, CONNECTION के बजाय COMMENT का उपयोग करें।)