जवाबों:
उपयोग करने का प्रयास करें netstat -ln | grep 'mysql'
और आप देख सकते हैं कि यह आउटपुट से कैसे जुड़ा हुआ है। यदि आपके पास शेल तक पहुंच है
यूनिक्स पर, MySQL प्रोग्राम होस्ट नाम लोकलहोस्ट का विशेष रूप से इलाज करते हैं, एक तरह से जो अन्य नेटवर्क-आधारित प्रोग्रामों की तुलना में आपकी अपेक्षा से भिन्न होता है। लोकलहोस्ट के कनेक्शन के लिए, MySQL प्रोग्राम एक यूनिक्स सॉकेट फ़ाइल का उपयोग करके स्थानीय सर्वर से कनेक्ट करने का प्रयास करता है।
पोर्ट नंबर निर्दिष्ट करने के लिए --port
या -P
विकल्प दिए जाने पर भी ऐसा होता है ।
यदि आप mysql CLI के भीतर से कनेक्शन प्रकार जानना चाहते हैं , तो '\' s (स्थिति) कमांड का उपयोग करें।
mysql> \s
आउटपुट में निम्न में से एक (यूनिक्स पर) की तरह एक पंक्ति होगी।
Connection: 127.0.0.1 via TCP/IP
या
Connection: Localhost via UNIX socket
यह सुनिश्चित करें कि ग्राहक स्थानीय सर्वर, उपयोग करने के लिए एक टीसीपी / आईपी कनेक्शन बनाता है --host
या -h
स्थानीय सर्वर का 127.0.0.1 के एक मेजबान के नाम मूल्य, या आईपी पते या नाम निर्दिष्ट करने के। आप --protocol=TCP
विकल्प का उपयोग करके, स्थानीय प्रोटोकॉल के लिए भी स्पष्ट रूप से कनेक्शन प्रोटोकॉल निर्दिष्ट कर सकते हैं । उदाहरण के लिए:
shell> mysql --host=127.0.0.1
shell> mysql --protocol=TCP
--protocol={TCP|SOCKET|PIPE|MEMORY}
विकल्प स्पष्ट रूप से एक प्रोटोकॉल सर्वर से कनेक्ट करने के लिए उपयोग करने के लिए निर्दिष्ट करता है। यह तब उपयोगी होता है जब अन्य कनेक्शन पैरामीटर सामान्य रूप से एक प्रोटोकॉल का उपयोग करते हैं, जिसे आप चाहते हैं। उदाहरण के लिए, यूनिक्स से लोकलहोस्ट पर कनेक्शन डिफ़ॉल्ट रूप से यूनिक्स सॉकेट फ़ाइल का उपयोग करके बनाए जाते हैं:
shell> mysql --host=localhost
इसके बजाय एक टीसीपी / आईपी कनेक्शन का उपयोग करने के लिए, एक --protocol
विकल्प निर्दिष्ट करें :
shell> mysql --host=localhost --protocol=TCP
एक यूनिक्स सॉकेट फ़ाइल कनेक्शन टीसीपी / आईपी से तेज है, लेकिन इसका उपयोग केवल उसी कंप्यूटर पर सर्वर से कनेक्ट करते समय किया जा सकता है।