दूरस्थ कनेक्शन स्वीकार करने के लिए MySql सर्वर सेटअप कैसे करें?


16

मैं उबंटू डेस्कटॉप में MySql सर्वर स्थापित कर रहा हूं। Server Hostnameजैसा कि निर्दिष्ट करते localhostसमय मैं इसे MySql क्वेरी ब्राउज़र को कनेक्ट कर सकता था , लेकिन जब मैं इसे मशीन के आईपी द्वारा प्रतिस्थापित करता हूं तो यह काम करना बंद कर देता है (भले ही MySql क्वेरी ब्राउज़र उसी मशीन में चलता हो)।

अब तक मैंने जो भी किया है वह सभी iptables को हटा रहा है, लेकिन ऐसा लगता है कि इसका इससे कोई लेना देना नहीं है।

यहाँ त्रुटि संदेश है

होस्ट '192.168.0.2' से कनेक्ट नहीं हो सका।

MySQL त्रुटि एन.आर. 2003

'192.168.0.2' (111) पर MySQL सर्वर से कनेक्ट नहीं किया जा सकता

नेटवर्किंग समस्या है या नहीं यह देखने के लिए 'पिंग' बटन पर क्लिक करें।

पिंग ठीक है, यद्यपि

जवाबों:


22

आपको अपने mysqld को 127.0.0.1 से अलग आईपी से बांधना होगा।

आमतौर पर अपने my.cnf (/etc/mysql/my.cnf) को खोलें और उस पंक्ति को बदलें जो कहती है

bind = 127.0.0.1

जो कुछ भी आपकी मशीन बाहरी दुनिया से जुड़ने के लिए उपयोग करती है। 0.0.0.0सभी आईपी पते के लिए बांधता है। उस परिवर्तन के बाद अपने mysqld को पुनरारंभ करना न भूलें।


अब एक अलग त्रुटि मिली: '192.168.0.2' होस्ट करने के लिए कनेक्ट नहीं हो सका। MySQL त्रुटि एन.आर. 1130 होस्ट 'जो भी- vubuntu.local' को इस MySQL सर्वर से कनेक्ट करने की अनुमति नहीं है
Jader Dias

उपयोगकर्ता @ स्थानीय होस्ट और उपयोगकर्ता @ <होस्टनाम> अलग है। आपको दूरस्थ होस्ट से कनेक्ट करने में सक्षम होने के लिए उपयोगकर्ता को जोड़ना होगा।
जेम्स

यह समस्या नहीं है। मैंने यह किया है और मुझे अभी भी त्रुटि मिलती है।
सेरिन

क्या ऐसा होना चाहिए bind-address?
थॉमस वेलर


2

कई और संभावित समस्याओं के बारे में यहाँ बताया गया है:

http://www.cyberciti.biz/tips/how-do-i-enable-remote-access-to-mysql-database-server.html http://dev.mysql.com/doc/refman/5.1/en /access-denied.html

यदि आप सभी डेटाबेस के लिए सभी विशेषाधिकार देना चाहते हैं, तो प्रयास करें

grant all on *.* to 'joe'@'%';

हालाँकि, ऐसा करने से पहले, सुनिश्चित करें कि आपके पास "mysql" डेटाबेस में एक उपयोगकर्ता है जिसके पास "होस्ट" आपके आईपी पते पर सेट है - मेरे मामले में, मेरा आईपी यहां घर पर है। इसलिए उपयोगकर्ता "जो" के पास एक से अधिक रिकॉर्ड हो सकते हैं, प्रत्येक आईपी के लिए एक जिसे वह कॉल कर सकता है। यह देखने के लिए कि आपके पास पहले से क्या है:

use mysql;
select Host, User, Password from user where user='joe';`

मेरे मामले में, मेरे उपयोगकर्ता को पता चला कि अब सही आईपी था लेकिन पासवर्ड भी गायब था। मैंने पासवर्ड को काट दिया (यह हैशेड या कुछ है) और इससे मेरी विशेष रिमोट कनेक्शन समस्या हल हो गई:

update user set Password='5493845039485' where user='joe';

एक और बात, my.cnf में आप "port = 3306" या जो भी पोर्ट आप उपयोग करने की योजना बना रहे हैं उसे सेट करना चाह सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.