कमांड लाइन से MySQL से कनेक्ट करना


225

आप मैक में कमांड लाइन से MySQL से कैसे जुड़ सकते हैं? (यानी मुझे कोड दिखाएं)

मैं एक PHP / SQL ट्यूटोरियल कर रहा हूं, लेकिन यह मानकर शुरू होता है कि आप पहले से ही MySQL में हैं।

जवाबों:


404

यहां देखें http://dev.mysql.com/doc/refman/5.0/en/connecting.html

mysql -u USERNAME -pPASSWORD -h HOSTNAMEORIP DATABASENAME 

उपरोक्त विकल्पों का अर्थ है:

-u: username
-p: password (**no space between -p and the password text**)
-h: host
last one is name of the database that you wanted to connect. 

लिंक में देखें, यह वहां विस्तृत है!


जैसा कि रिक ने पहले ही उल्लेख किया है , आप पासवर्ड को कमांड के भाग के रूप में पास करने से बच सकते हैं जैसे कि पासवर्ड को पास न करके:

mysql -u USERNAME -h HOSTNAMEORIP DATABASENAME -p

इस उत्तर को संपादित करने वाले लोग: कृपया के बीच एक स्थान का पता लगाएं -pऔरPASSWORD


धन्यवाद, 2 प्रश्न 1) क्या आपको "- u" "- p" इत्यादि को शामिल करना है, या जिन्हें यूजरनेम आदि द्वारा प्रतिस्थापित किया जाता है 2) अगर कोई डेटाबेस नहीं बना है तो क्या आप उस रिक्त को छोड़ देते हैं?
लीहसीम

2
आपके द्वारा लॉग इन किए गए उपयोगकर्ता के आधार पर MySQL प्रमाणीकरण स्थापित करना संभव है, या बिल्कुल भी प्रमाणित नहीं है, लेकिन न तो यह एक अच्छा विचार है, कमांड लाइन पर पासवर्ड निर्दिष्ट करना थोड़ा सुरक्षा जोखिम भी है क्योंकि यह आपकी कमांड में समाप्त होता है इतिहास और प्रक्रिया तालिकाओं। यदि आप पासवर्ड छोड़ते हैं तो यह आपसे इसके लिए पूछेगा।
dj_segfault

@ मिचेल 1) अपडेट किया गया। सभी-कैप को वास्तविक मूल्यों के साथ बदलने की आवश्यकता है। छोड़ दो -u, -p, -h के रूप में यह 2 है) हाँ। show databasesडेटाबेस की सूची देखने के लिए लॉग-इन करने के बाद ।
निशांत

3
@dj_segfault सही। इसलिए, यदि आप -pपासवर्ड निर्दिष्ट किए बिना छोड़ देते हैं, तो यह आपको पासवर्ड के लिए संकेत देगा।
निशांत

यदि आपके पास वर्तमान में कोई डेटाबेस नहीं है, तो आपको एक बनाने के लिए mysqladmin कमांड का उपयोग करने की आवश्यकता है। लेकिन मेरा मानना ​​है कि जब आप सर्वर स्थापित करते हैं, तो डिफ़ॉल्ट "mysql" डेटाबेस बनाया जाता है, जो सभी स्कीमा और प्रमाणीकरण जानकारी रखता है। आप उस में लॉग इन कर सकते हैं (यदि आपके पास पर्याप्त विशेषाधिकार हैं) और वहां से अन्य डेटाबेस बनाएं।
dj_segfault

128

सबसे अच्छा अभ्यास होगा mysql -u root -p। एंटर करने के बाद फिर MySQL पासवर्ड के लिए संकेत देगा।


25
विस्तृत करने के लिए, यह आपके पासवर्ड को दिखाने से रोकता है .bash_history। वर्तमान शीर्ष मतदान पद्धति का उपयोग करते हुए, यदि कोई व्यक्ति $HOME(और इस प्रकार .bash_history) तक पहुंच प्राप्त करता है , तो उनके पास आपके प्रमाणीकरण विवरण भी हैं - डरावना! इस तरह की घुसपैठ (और कर सकती है ) होती है ...
जेरेमी

आप इसे बिना .bash_profie में दिखाए बिना एक बैश कमांड निष्पादित कर सकते हैं। यहाँ और पढ़ें: कमांडलाइनफू
कॉमैंड्स/view/1512/…

@ जेरेमी न केवल में, .bash_historyबल्कि topऔर अधिक टूल में भी! आप अपनी फ़ाइलों को सुरक्षित भी रख सकते हैं, बस कंप्यूटर को किसी अन्य वैध उपयोगकर्ता के साथ साझा करें।
मेलेबियस

+1 क्योंकि मेरे पासवर्ड में विशेष प्रतीक हैं और यह कमांड के भाग के दौरान पार्स नहीं होगा, इसे अलग से करना होगा।
जैक्सनक्रे

10

अपने MySQL डेटाबेस से जुड़े रहने के लिए निम्न कमांड का उपयोग करें

mysql -u USERNAME -h HOSTNAME -p


9

आपके द्वारा MySQL शेल चलाने के बाद और आपने निम्नलिखित देखा है:

mysql-js>

सबसे पहले, आपको चाहिए:

mysql-js>\sql

दूसरी बात यह है:

 mysql-sql>\connect username@servername (root@localhost)

और अंत में:

Enter password:*********

3

उचित MySQL उपयोगकर्ता नाम और पासवर्ड का उपयोग करके सीधे MySQL से कनेक्ट करने का एक तरीका है:

mysql --user=root --password=mypass

यहाँ,

root is the MySQL username
mypass is the MySQL user password

यदि आपके पास एक खाली पासवर्ड है तो यह उपयोगी है।

उदाहरण के लिए, यदि आपके पास rootएक खाली पासवर्ड के साथ MySQL उपयोगकर्ता है , तो बस उपयोग करें

mysql --user=root --password=

0

यह मेरे लिए काम किया :: -

mysql --host=hostNameorIp --user=username --password=password  

या

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