2009-02-03 17 views
19

मुझे डर है कि मैं पहले से ही मेरे सवाल का जवाब जानने हूँ से चयन, लेकिन मैं इसे वैसे भी कहेंगे:MySQL: किसी अन्य सर्वर

दो MySQL DB सर्वर देखते हैं जब, मुझे लगता है कि संग्रहीत किया जाता है डेटा तक पहुँच सकते दूसरे सर्वर पर?

दूसरे शब्दों में: मैं किसी भी तरह यह कर सकता:

INSERT INTO table (x, y, z) 
    SELECT x, y, x+y 
     FROM [otherserver].[database].[table] 

जवाब वास्तव में के रूप में के रूप में "नहीं" कम है?

+0

संघीय तालिका का उपयोग करें। इसका संदर्भ लें: http://winashwin.wordpress.com/2012/08/22/mysql-federated-table/ – Jacob

+0

यह लेख ["एकाधिक सर्वरों पर MySQL क्वेरी चलाना"] पर है [http://www.linux.com/ फीचर/523 9 0) लगता है जैसे यह बताता है कि आप क्या करना चाहते हैं। लिंक वर्तमान में मर चुका है, इसलिए यहां सामग्री [archive.org से] है (http://web.archive.org/web/20090302102331/http://www.linux.com/feature/52390?): –

+0

विचार एक पल के लिए ऐसा कुछ करने के बारे में, लेकिन मैं इसे इस तरह से नहीं कर सकता, क्योंकि हम प्रतिकृति का उपयोग करते हैं ... अच्छी तरह से ... प्रतिकृति - अन्य सर्वरों के बीच। :) – BlaM

उत्तर

13

आप जो भी करने की कोशिश कर रहे हैं उसे पूरा करने के लिए आप MySQL में फ़ेडरेटेड टेबल सेट अप कर सकते हैं। कुछ सीमाएं हैं।

http://dev.mysql.com/doc/refman/en/federated-storage-engine.html http://dev.mysql.com/doc/refman/en/federated-usagenotes.html

+0

यह वास्तव में दिलचस्प लग रहा है :) – BlaM

0
CREATE TABLE `remote_table`(
    `foo` VARCHAR(100), 
    UNIQUE KEY(`foo`(30)) 
) ENGINE=FEDERATED CONNECTION='mysql://thedomain.com:3306/remotedbname/remotetablename'; 

फिर चुनें के साथ किसी अन्य तालिका है जैसे कि यह क्वेरी, अद्यतन, सम्मिलित करें, हटाएँ।

संबंधित मुद्दे