किसी सर्वर पर फ़ेडरेटेड टेबल का उपयोग करने के बारे में कैसे? रिमोट टेबल पर आधारित फ़ेडरेटेड टेबल बनाएं जो आप क्वेरी में उपयोग करेंगे और केवल अपनी क्वेरी चलाएं जैसे आपका डेटाबेस सभी स्थानीय था। नीचे दिए गए उदाहरण से MySQL site
संघीय तालिकाओं का उपयोग करने के लिए प्रक्रिया बहुत सरल है। आम तौर पर, आपके पास दो सर्वर होते हैं, या तो दोनों एक ही मेजबान या अलग-अलग होस्ट पर होते हैं। (एक ही सर्वर द्वारा प्रबंधित की जाने वाली किसी अन्य तालिका का उपयोग करने के लिए एक फेडेरेटेड तालिका के लिए संभव है, हालांकि ऐसा करने में थोड़ा सा बिंदु है।)
सबसे पहले, आपके पास उस दूरस्थ सर्वर पर एक टेबल होनी चाहिए जिसे आप एक्सेस करना चाहते हैं एक फेडेरेटेड टेबल का उपयोग करके।मान लीजिए कि दूरस्थ तालिका फ़ेडरेटेड डेटाबेस में है और इस तरह परिभाषित किया गया है:
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 से पहले, बल्कि कनेक्शन से उपयोग टिप्पणी।)
स्रोत
2009-10-09 22:20:00
आप में कभी रहे हैं स्थिति जहां mysql क्लाइंट एक जॉइन कर रहा है, आप परेशानी में हैं - सर्वर के लिए एक दूसरे के साथ संवाद करने के लिए सही समाधान है और क्लाइंट को भेजने के लिए एक एकल परिणाम सेट उत्पन्न करता है। एमएसएसएलएल आपको सर्वरों को "लिंक" करने की इजाजत देता है - और इसलिए कनेक्शन के लिए वे किस क्रेडेंशियल्स का उपयोग करेंगे, कॉन्फ़िगर करें ... इन सर्वरों को तब उपनाम के माध्यम से एक्सेस किया जाता है। – Basic
मुझे यह समझने में थोड़ा सा लगा कि आप किस बारे में बात कर रहे थे। एक और जवाब वर्णन करता है कि माईएसक्यूएल में ऐसा कैसे किया जाए जो कि मैंने जो पोस्ट किया है उससे अधिक सामान्य समाधान है। – staticsan