MySQL में डेटाबेस कैसे कनेक्ट करें और बनाएं?


17

मैं निम्नलिखित कोड का उपयोग करके MySQL को स्थापित करना चाहता हूं और उस पर एक डेटाबेस बनाना चाहता हूं:

sudo apt-get install mysql-server
mysqladmin -h localhost -u {username} -p create lrs

दूसरी पंक्ति निष्पादित करने के बाद मुझे निम्न संदेश मिला:

    Enter password:
    mysqladmin: connect to server at 'localhost' failed
    error: 'Access denied for user '{username}'@'localhost' (using password: YES)'

समस्या क्या है?


1
यदि आपने वास्तव में इन 2 आदेशों का उपयोग किया है जहाँ आपने {username} (यदि एडमिन / रूट नहीं) के लिए डेटाबेस प्राप्त करने में सक्षम होने के लिए PRIVILIGES किया है?
रिनविंड

जवाबों:


26

MySQL स्थापित करने के बाद, आपको mysql रूट पासवर्ड सेट करना होगा । ऐसा करने के लिए:

  1. टर्मिनल में अगला कमांड दर्ज करें:

    mysql -u root

  2. अब इसे mysql कंसोल को खोलना चाहिए । और निम्न पंक्ति टाइप करें:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');

Mysql कंसोल से बाहर निकलने के लिए प्रवेश करें exit

अब आपको डेटाबेस को रूट यूजर के साथ बनाना चाहिए । ऐसा करने के लिए:

  1. टर्मिनल से mysql खोलें :

    mysql -u root -p

  2. पहले बनाया पासवर्ड डालें।

  3. निम्नलिखित पंक्ति दर्ज करें:

    CREATE DATABASE yourdatabasename;

यदि आप दर्ज SHOW DATABASES;करते हैं तो आपको इसे सूची में देखना चाहिए। यदि हां, तो आपके पास उपयोग करने के लिए एक डेटाबेस तैयार है!


mysql -u rootमुझे देता हैERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
निकोलस राउल

उस त्रुटि का मतलब है कि आपके पास पहले से ही एक rootउपयोगकर्ता है और उसके पास एक पासवर्ड है। यदि आप rootपासवर्ड भूल गए हैं, तो MySQL प्रलेखन पढ़ें ।
लुसियो

1

आपको रूट उपयोगकर्ता और संबंधित पासवर्ड का उपयोग करके MySQL से कनेक्ट करना होगा। यदि आपको उन्हें सेट करने की आवश्यकता है, तो निम्न कमांड का उपयोग करें:sudo mysqladmin -u root -h localhost password 'mypassword'

वहां से, आप इस दस्तावेज़ का पालन करके अतिरिक्त खातों को कॉन्फ़िगर कर सकते हैं: एक नया उपयोगकर्ता कैसे बनाएं और MySQL में अनुदान अनुमतियाँ


1
मैंने sudo mysqladmin -u root -h localhost password 'mypassword'इसे अपने टर्मिनल में कॉपी किया और मुझे संदेश मिला Access denied for user 'root'@'localhost' (using password: NO)
user543489

@ बर्ट यह कोड काम नहीं करेगा। password 'mypassword'गलत है, यह होना चाहिए-password 'mypassword'
लुसियो

क्या कुछ को 'माईगॉर्वर्ड' से बदला जाना चाहिए?
user543489

मैंने अमल किया sudo mysqladmin -u root -h localhost -password 'mypassword', लेकिन मुझे मिल गया Access denied for user 'root'@'localhost' (using password: YES)
user543489

@ user543489 यदि आप प्रवेश करते हैं तो क्या होगा mysql -u root?
लुसियो

1

यह अजीब है क्योंकि 12.04 (अनुमान है कि आप कुबंटू 12.04 चला रहे हैं), MySQL डिफ़ॉल्ट हो गया है। ऐसा लगता है कि आप बीच में कुछ चरणों को याद कर रहे हैं, तो चलिए इस पर नज़र डालते हैं:

सबसे पहले, जैसा कि आपने उल्लेख किया है, चलो एक अधिष्ठापन करते हैं,

sudo apt-get install mysql-server

इसे स्थापित करने के बाद, आइए थोड़ा परीक्षण करें,

sudo netstat -tap | grep mysql

जब आप इसे चलाते हैं, तो आपको यह उत्तर देखना चाहिए,

tcp        0      0 localhost:mysql         *:*                LISTEN      2556/mysqld

यदि यह सही ढंग से नहीं चल रहा है, तो यह पुनरारंभ कमांड चलाएँ,

sudo service mysql restart

अब सर्वर को कॉन्फ़िगर करने के लिए।

आइए /etc/mysql/my.cnfबुनियादी सेटिंग्स को कॉन्फ़िगर करने के लिए जाएं । इसमें लॉग फ़ाइल, पोर्ट नंबर, आदि शामिल हैं। उदाहरण के लिए, नेटवर्क होस्ट से कनेक्शन सुनने के लिए MySQL को कॉन्फ़िगर करने के लिए, सर्वर के आईपी पते के लिए बाइंड-एड्रेस निर्देश बदलें :

bind-address            = 192.168.0.5

इसके बाद, MySQL डेमॉन को पुनरारंभ करें,

sudo service mysql restart

यदि आप MySQL रूट पासवर्ड बदलना चाहते हैं, तो इसे चलाएं:

sudo dpkg-reconfigure mysql-server-5.5

डेमॉन बंद कर दिया जाएगा और आपको एक नया पासवर्ड देने के लिए कहा जाएगा।

एक बार जब आप काम कर लेते हैं, तो आपको कॉन्फ़िगर किया जाना चाहिए और कुछ Google खोज आपको डेटाबेस बनाने का तरीका सिखाएंगे

स्रोत: उबंटू सर्वर गाइड


0

यह आदेश चलाएँ:

sudo dpkg-reconfigure mysql-server-5.5

(5.5 संस्करण संख्या है, यदि आपके पास भिन्न संस्करण है तो अनुकूलित करें)

यह आपको अपना MySQL रूट पासवर्ड सेट करने की अनुमति देगा, जिसे आप तब mysqladminऔर mysqlकमांड के साथ उपयोग कर सकते हैं ।


-1

MySQL स्थापित करने के बाद, आपको mysql रूट पासवर्ड सेट करना होगा। ऐसा करने के लिए:

Enter the next command in a terminal:

mysql -u root -p

Enter Password: (Enter your password here).

यह कुछ भी योगदान नहीं करता है जो पहले से ही स्वीकृत उत्तर में नहीं कहा गया है।
गुंटबर्ट

-1

मुझे पता है कि यह 3 साल पुराना है, लेकिन मुझे अभी भी यह समस्या थी और मैं अपना जवाब उसी तरह से पोस्ट करना चाहता था जैसा मैंने किया था।

mysqladmin: connect to server at 'localhost' failed

यह इंगित करता है कि आपके उपयोगकर्ता के पास डेटाबेस से कनेक्ट होने की अनुमति नहीं है, इससे पहले कि वह लॉग इन करने से पहले भी हो; डेटाबेस उपयोगकर्ता नहीं, आपका वास्तविक लिनक्स उपयोगकर्ता। सुपर उपयोगकर्ता के रूप में सब कुछ चलाएं: sudo mysql -u root -p

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

sudo mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('yourpassword');
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';
FLUSH PRIVILEGES;

अब "newuser" (या जो भी नाम आप चुनते हैं) को sudo की आवश्यकता के बिना लॉग-इन किया जा सकता है और आप इसे अपने सभी डेटाबेस प्रशासनिक आवश्यकताओं के लिए उपयोग कर सकते हैं।


1
probablyयहाँ एक उत्तर में शब्द का उपयोग करना है।
विनयुनुच्स

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