2009-04-04 11 views

उत्तर

13

हां, आपको बस उन्हें अलग-अलग बंदरगाहों पर चलाने की आवश्यकता है और उन्हें अपने डेटा के लिए विभिन्न lib निर्देशिकाओं पर इंगित करने की आवश्यकता है।

यहाँ एक अच्छा संदर्भ है: http://dev.mysql.com/doc/refman/5.1/en/mutiple-servers.html

(आप परीक्षण के लिए उपयोग करना चाहते हैं, तो मैं देखने का सुझाव देते MySQL सैंडबॉक्स @https://launchpad.net/mysql-sandbox)

1

वहाँ (विभिन्न पर mysql के कई उदाहरण चलाने के लिए विभिन्न तरीके हैं बंदरगाहों) एक ही मशीन पर। यहां मैंने एक ही बाइनरी का उपयोग किया है और एक अलग कॉन्फ़िगरेशन फ़ाइल (अलग पोर्ट, पिड, सॉकेट और डेटा निर्देशिका के साथ) का उपयोग किया है। हमें अपने डेटाडाइर और लॉग फ़ोल्डर (यदि उपयोग किया जाता है) के लिए नई निर्देशिका बनाने की आवश्यकता है। इसके अलावा हम उन फ़ोल्डरों पर उचित अनुमतियां देने की जरूरत है:

# mkdir /var/lib/mysql2 
    # chown -R mysql.mysql /var/lib/mysql2/ 
    # mkdir /var/log/mysql2 
    # chown -R mysql.mysql /var/log/mysql2 

अगला हम एक अलग विन्यास फाइल एक डिफ़ॉल्ट mysql विन्यास फाइल के रूप में ही की जरूरत है। तो मौजूदा को कॉपी करके और आवश्यक मानों को बदलकर शुरू करें।

# cp /etc/my.cnf /etc/my2.cnf 

(या अपनी कॉन्फ़िगरेशन फ़ाइल के लिए उचित रूप से पथ को एक अलग स्थान पर बदलें)।

अगला, हमें अपनी नई कॉन्फ़िगरेशन फ़ाइल को अलग-अलग mysql पोर्ट (डिफ़ॉल्ट रूप से 3306), डिफ़ॉल्ट रूप से पिड और सॉकेट के साथ संपादित करने की आवश्यकता है, और डेटा को इंगित करें और पहले बनाए गए फ़ोल्डरों को लॉग करें। हम का उपयोग कर हमारे नए उदाहरण से कनेक्ट कर सकते

# mysqld_safe – -defaults-file=/etc/my2.cnf & 

:: अंत में हम साथ हमारे नए mysql उदाहरण शुरू कर सकते हैं

# mysql_install_db –user=mysql –datadir=/var/lib/mysql2/ 

:

# cd /etc 
    # sed -i ‘s/3306/3307/g’ my2.cnf 
    # sed -i ‘s/mysqld.sock/mysqld2.sock/g’ my2.cnf 
    # sed -i ‘s/mysqld.pid/mysqld2.pid/g’ my2.cnf 
    # sed -i ‘s/var\/lib\/mysql/var\/lib\/mysql2/g’ my2.cnf 
    # sed -i ‘s/var\/log\/mysql/var\/log\/mysql2/g’ my2.cnf 

अंत में हम डिफ़ॉल्ट डीबीएस प्रारंभ करने की आवश्यकता

# mysql -S /var/run/mysqld/mysqld2.sock 

या

# mysql -h 127.0.0.1 -P 3307 

और अगर हम इसकी ज़रूरत नहीं है, के साथ इसे रोकने:

# mysqladmin -S /var/run/mysqld/mysqld2.sock shutdown 

रेफरी साइट: https://linuxinpakistan.com/start-multiple-instances-mysql-machine

+0

अरे! एसओ में आपका स्वागत है बस अपने प्रश्न के उत्तर वाले एक लिंक को पोस्ट करना यह एक अच्छा अभ्यास नहीं है। आप एक लिंक जोड़ सकते हैं लेकिन आपको उत्तर टेक्स्ट में समाधान प्रदान करना होगा। –

+0

@GustavoStraube इसके लिए क्षमा करें –

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