यहां तीन मुद्दे हैं।
1 - अभी के लिए SSH सुरंग को भूल जाइए
आप MySQL को एक से अधिक विशिष्ट IP से बाइंड नहीं कर सकते हैं। पहला bind-address
खंड दूसरे द्वारा ओवरराइड किया गया है (इसलिए, अनदेखा किया गया)। आपका सर्वर केवल 99.99.99.99
सुनता है ।
जिस कारण से आप -h localhost
से जुड़ सकते हैं लेकिन -h 127.0.0.1
. के साथ नहीं यह है कि पहले रूप में, आप वास्तव में TCP/IP के माध्यम से नहीं, बल्कि एक स्थानीय सॉकेट के माध्यम से कनेक्ट होते हैं।
अपने my.cnf
. में देखें socket
. के लिए खंड।
एक अनावश्यक bind-address
निकालें खंड। आप bind-address=0.0.0.0
. का उपयोग करना चाह सकते हैं , जो MySQL डेमॉन को सभी . को सुनने का निर्देश देता है नेटवर्क इंटरफेस।
2 - चलिए आपकी SSH टनल सेट करते हैं
आपके त्रुटि का कारण ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0
मेरे लिए स्पष्ट नहीं है। मुझे संदिग्ध एसएसएच सुरंग वास्तव में केवल तभी स्थापित होती है जब उसे कनेक्शन अनुरोध प्राप्त होता है (आपके मामले में, जब आप mysql
चलाते हैं ग्राहक)। चूंकि आपका सर्वर 127.0.0.1 (पिछला पैराग्राफ देखें) नहीं सुनता है, एसएसएच सुरंग स्थापित नहीं की जा सकती, कनेक्शन विफल हो जाता है, और आपका क्लाइंट इसे नेटवर्क विफलता के रूप में व्याख्या करता है।
3 - क्यों mysql -v -h localhost -P 9989 -u user userdb -p
विफल रहता है
कृपया
. का आउटपुट पोस्ट करें
[संपादित करें:अभी जोड़ा गया ...OR host LIKE 'localhost'
नीचे, क्योंकि यह समस्या निवारण उद्देश्यों के लिए प्रासंगिक हो सकता है]
mysql > SELECT user, host FROM mysql.user WHERE user LIKE 'user' OR host LIKE 'localhost';
('user'
. को बदलें , LIKE
. के बाद खंड, यदि आवश्यक हो तो वास्तविक उपयोगकर्ता नाम के साथ)
MySQL अभिगम नियंत्रण उपयोगकर्ता नाम/पासवर्ड (user
. दोनों की जांच करता है ) और कनेक्शन की उत्पत्ति (host
) एक उपयोगकर्ता की पहचान करने के लिए। आपने शायद एक उपयोगकर्ता नहीं बनाया है 'user'@'localhost'
।
ध्यान दें:mysql.com इस समय मेरे स्थान से पहुंच योग्य नहीं है, मैं प्रासंगिक मैन्युअल पृष्ठों से लिंक नहीं कर सकता।