MySQL रूट पासवर्ड को रीसेट या कैसे बदलें?


179

मैं ubuntu सर्वर में MySQL रूट पासवर्ड और उपयोगकर्ता नाम कैसे बदलूं? क्या मुझे कोई परिवर्तन करने से पहले mysql सेवा को रोकने की आवश्यकता है?

मेरे पास एक phpmyadmin सेटअप है, क्या phpmyadmin स्वतः अपडेट हो जाएगा?


यदि आपको उस डेटा की आवश्यकता नहीं है जिसे आप mysql को पूरी तरह से हटाकर पासवर्ड को "रीसेट" कर सकते हैं: stackoverflow.com/questions/10853004/… तो इसे फिर से इंस्टॉल करें (यह आपको "नए" रूट पासवर्ड के लिए संकेत देगा) FWIW )
रोज़गारपैक

क्या आप MySQL रूट पासवर्ड जानते हैं?
फ्रेंक डर्नोनकोर्ट

2
mysql-server-5.7 में ये तरीके काम नहीं करते हैं। पासवर्ड के बिना 'sudo' का उपयोग करें जैसा कि askubuntu.com/a/848504
प्रागैल्थन एम

जवाबों:


225

उबंटू लिनक्स पर MySQL रूट पासवर्ड सेट / बदलें / रीसेट करें। अपने टर्मिनल में निम्न पंक्तियाँ दर्ज करें।

  1. MySQL सर्वर बंद करो: sudo /etc/init.d/mysql stop
  2. mysqldकॉन्फ़िगरेशन प्रारंभ करें:sudo mysqld --skip-grant-tables &

    कुछ मामलों में, आपको /var/run/mysqldपहला बनाना होगा :

    sudo mkdir -v /var/run/mysqld && sudo chown mysql /var/run/mysqld
  3. Daud: sudo service mysql start
  4. रूट के रूप में MySQL में लॉगिन करें: mysql -u root mysql
  5. YOURNEWPASSWORDअपने नए पासवर्ड से बदलें :

    UPDATE
      mysql.user
    SET
      Password = PASSWORD('YOURNEWPASSWORD')
    WHERE
      User = 'root';
    FLUSH PRIVILEGES;
    exit;

नोट: कुछ संस्करणों पर, यदि passwordकॉलम मौजूद नहीं है, तो आप कोशिश करना चाह सकते हैं:
UPDATE user SET authentication_string=password('YOURNEWPASSWORD') WHERE user='root';

नोट: इस विधि को पासवर्ड रीसेट करने का सबसे सुरक्षित तरीका नहीं माना जाता है, हालांकि, यह काम करता है।

संदर्भ:

  1. उबंटू लिनक्स पर MySQL रूट पासवर्ड सेट / बदलें / रीसेट करें
  2. रूट पासवर्ड को कैसे रीसेट करें

20
बेशक, इस बिंदु के बाद आपको अस्थायी, पासवर्ड-कम सर्वर प्रक्रिया को मारने की आवश्यकता होगी जो आपने चरण 2 में शुरू की थी। शायद उपयोग करें sudo killall -9 mysqld? और फिर sudo service mysql startसामान्य डेमॉन को फिर से शुरू करने के लिए ...
लैम्बर्ट

7
इस उत्तर में विधि केवल एक MySQL रूट पासवर्ड को रीसेट करने के लिए आवश्यक है जिसे आप [स्रोत ] नहीं जानते हैं । यदि आप इसे जानते हैं, तो SET PASSWORDMySQL निर्देश आपके लिए है।
तनीस

53
मैंने तीसरे चरण तक पीछा किया और मुझे सॉकेट '/var/run/mysqld/mysqld.sock' (2) के माध्यम से स्थानीय MySQL सर्वर से कनेक्ट नहीं किया जा सकता है जब मैं थ्रू रूट को लॉगिन करता
हूं

12
कुछ मामलों में, आप भी रन की जरूरत है mkdir /var/run/mysqldऔर chown mysql: /var/run/mysqldचरणों 1 2 के बीच और
नेविल Nazerane

9
चरण 3 ने मेरे लिए उबंटू 18.04 के साथ काम नहीं किया। मैंने सिर्फ sudo mysql
itsols

122

मेरे लिए काम करने वाली एकमात्र विधि यहां वर्णित है (मैं ubuntu 14.04 चला रहा हूं)। स्पष्टता के लिए, इन चरणों का पालन मैंने किया है:

  1. sudo vim /etc/mysql/my.cnf
  2. निम्नलिखित पंक्तियों को अंत में जोड़ें:

    [Mysqld]
    
    छोड़-अनुदान टेबल
  3. sudo service mysql restart

  4. mysql -u root

  5. use mysql

  6. select * from mysql.user where user = 'root';- पासवर्ड कॉलम को पासवर्ड या ऑथेंटिकेशन_स्ट्रिंग कहा जाता है या नहीं यह निर्धारित करने के लिए सबसे ऊपर देखें

  7. UPDATE mysql.user set *password_field from above* = PASSWORD('your_new_password') where user = 'root' and host = 'localhost'; - ऊपर से उचित पासवर्ड कॉलम का उपयोग करें

  8. FLUSH PRIVILEGES;

  9. exit

  10. sudo vim /etc/mysql/my.cnf

  11. यदि आप अपने सुरक्षा मानकों को रखना चाहते हैं, तो चरण 2 में जोड़ी गई पंक्तियों को हटा दें

  12. sudo service mysql restart

संदर्भ के लिए: https://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html


8
अंत में, यह मेरे लिए काम किया! मैं Ubuntu 16.04 पर MySQL 5.7.18 चला रहा हूं। मैंने dpkg-reconfigure की कोशिश की, Anvesh का जवाब, Christian Mark का जवाब और यहां तक ​​कि MySQL के मदद पृष्ठ पर दिए गए निर्देश।
mbuc91

9
मुझे UPDATE mysql.user SET ऑथेंटिकेशन_string = PASSWORD ('newpwd') चलाना होगा, जहां उपयोगकर्ता = 'रूट' होगा; इसके बजाय लाइन 5. के लिए
mbuc91

2
एकमात्र समाधान जो मेरे लिए काम करता है। मेरे पास Ubuntu 17.04 और mysql 5.7
मोहम्मद

1
दुखद यह मेरे लिए काम नहीं करता है mysql 5.7.22 ubuntu 18.04
मारियो

1
सब कुछ उम्मीद के मुताबिक काम कर रहा था। लेकिन जब यह लॉगिन करने की कोशिश कर रहा है तो पासवर्ड दर्ज करें: ERROR 1698 (28000): उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए अस्वीकार कर दिया गया है
दीपक चटर्जी

101

Ubuntu सर्वर पर रूट पासवर्ड रीसेट करने का आधिकारिक और आसान तरीका ...

यदि आप 16.04, 14.04, 12.04 पर हैं:

sudo dpkg-reconfigure mysql-server-5.5

यदि आप 10.04 पर हैं:

sudo dpkg-reconfigure mysql-server-5.1

यदि आप सुनिश्चित नहीं हैं कि mysql-server संस्करण स्थापित है तो आप कोशिश कर सकते हैं:

dpkg --get-selections | grep mysql-server

Mysql-server-5.7 के लिए अपडेट किए गए नोट

ध्यान दें कि यदि आप mysql-server-5.7 का उपयोग कर रहे हैं, तो आप ऊपर दिखाए गए आसान dpkg-reconfigure विधि का उपयोग नहीं कर सकते हैं।

यदि आप पासवर्ड जानते हैं, तो लॉगिन करें और इसे चलाएं:

UPDATE mysql.user SET authentication_string=PASSWORD('my-new-password') WHERE USER='root';
FLUSH PRIVILEGES;

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

sudo mysql_secure_installation

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

यदि आप रूट पासवर्ड नहीं जानते हैं, तो प्रक्रिया पर इस Ubuntu-केंद्रित लेखन को देखें

अधिक जानकारी के लिए देखें:

https://help.ubuntu.com/16.04/serverguide/mysql.html https://help.ubuntu.com/14.04/serverguide/mysql.html


3
तब भी काम करता है जब आपने मूल MySQL रूट पासवर्ड खो दिया हो - अच्छा।
तानीस

4
के साथ काम करता हैVer 14.14 Distrib 5.5.38, for debian-linux-gnu
justinpage

Mysql v 5.0 के साथ भी काम किया ...sudo dpkg-reconfigure mysql-server-5.0
dsghi

4
sudo dpkg-reconfigure mysql-server-5.7 उबंटू रूट पासवर्ड के लिए Ubuntu 18.04 के लिए काम नहीं कर रहा है। कोई अन्य वैकल्पिक?
जगदीप सिंह

उबंटू:sudo dpkg-reconfigure mysql-server-5.7; sudo mysql_secure_installation
केनोरब

77

मेरे लिए क्या काम किया (Ubuntu 16.04, mysql 5.7):

MySQL बंद करो

sudo service mysql stop

MySQL सेवा निर्देशिका बनाएं।

sudo mkdir /var/run/mysqld

MySQL उपयोगकर्ता को सेवा निर्देशिका में लिखने की अनुमति दें।

sudo chown mysql: /var/run/mysqld

MySQL मैन्युअल रूप से प्रारंभ करें, बिना अनुमति जाँच या नेटवर्किंग के।

sudo mysqld_safe --skip-grant-tables --skip-networking &

दूसरे कंसोल पर, बिना पासवर्ड के लॉग इन करें।

mysql -uroot mysql

फिर:

UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';
EXIT;

MySQL को बंद करें।

sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

MySQL सेवा को सामान्य रूप से शुरू करें।

sudo service mysql start

अन्य तरीके मेरे लिए काम नहीं करते थे लेकिन यह एक (धन्यवाद!), या आप यहां rricketts.com/reset-root-password-mysql-5-7-ubuntu-16-04-lts
Dung

10
बहुत उपयोगी ! मेरे विशिष्ट मामले में (उबंटू 18.04 एलटीएस), मुझे होस्ट '%' को 'लोकलहोस्ट' में बदलना पड़ा
फ्रेडेरिक

यह ubuntu 18.04 में काम नहीं किया। लेकिन यह इस छोटे से बदलाव के साथ काम करता है जिसका वर्णन यहां किया गया है stackoverflow.com/a/53385753/1591143
अलेक्जेंडर पोपोविक

76

मैं लिनक्स उबंटू में एक MySQL पासवर्ड को रीसेट करने के लिए चरण दर चरण समाधान साझा कर रहा हूं।

ब्लॉग से लिया गया संदर्भ (dbrnd.com)

चरण 1: MySQL सेवा बंद करें।

sudo stop mysql

चरण 2: सभी रनिंग mysqld को मारें।

sudo killall -9 mysqld

चरण 3: सुरक्षित मोड में mysqld शुरू करना।

sudo mysqld_safe --skip-grant-tables --skip-networking &

चरण 4: mysql क्लाइंट प्रारंभ करें

mysql -u root

चरण 5: सफल लॉगिन के बाद, कृपया किसी भी पासवर्ड को बदलने के लिए इस कमांड को निष्पादित करें।

FLUSH PRIVILEGES;

चरण 6: आप mysql रूट पासवर्ड को अपडेट कर सकते हैं।

UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

नोट : MySQL 5.7 पर, कॉलम Passwordकहा जाता है authentication_string

चरण 7: कृपया इस कमांड को निष्पादित करें।

FLUSH PRIVILEGES;

वास्तव में। इसके अलावा, यह आधिकारिक दस्तावेज के करीब है । यदि आप इसमें भाग लेते हैं: "ERROR 1524 (HY000): प्लगिन 'ओडिस_सोकेट' लोड नहीं किया गया है", stackoverflow.com/questions/37879448/…
Wtower

मुझे अपने स्थानीय उपयोगकर्ता को 'localhost' के होस्ट के साथ mysql.user.plugin को 'od_socket' से 'mysql_native_password' में बदलना था।
ब्रैंडन

1
मुझे सेवा को रोकने के लिए "sudo /etc/init.d/mysql stop" का उपयोग करना पड़ा और "UPDATE mysql.user SET प्रमाणीकरण_string = PASSWORD ('newpwd') जहां उपयोगकर्ता = 'रूट';" पासवर्ड अपडेट करने के लिए
L Bahr

1
प्रमाणित _string ने मदद की
एमडी अब्दुल

42

मुझे ubuntu 18.04 और mysql 5.7 के साथ समस्याओं का सामना करना पड़ा, यह समाधान है

धूमिल को निष्पादित करने से पहले mysql-server को पुनरारंभ करने का प्रयास करें

sudo service mysql restart

MYSQL-SERVER> = 5.7

sudo mysql -uroot -p
USE mysql;
UPDATE user SET authentication_string=PASSWORD('YOUR_PASSWORD') WHERE User='root';
UPDATE user SET plugin="mysql_native_password";
FLUSH PRIVILEGES;
quit;

MYSQL-SERVER <5.7

sudo mysql -uroot -p
USE mysql;
UPDATE user SET password=PASSWORD('YOUR_PASSWORD') WHERE User='root';
UPDATE user SET plugin="mysql_native_password";
FLUSH PRIVILEGES;
quit;

1
धन्यवाद, मैं भी उबंटू 18.04 चला रहा हूँ और MYSQL-SERVER >= 5.7संस्करण केवल एक चीज थी जो वास्तव में समस्या का समाधान करती थी
मिगेलग्रैज जूल

1
यह वह है जो उबंटू 18.04 mysql स्थापना में काम करता है। MYSQL-SERVER >= 5.7संस्करण सटीक हो।
सतीश मनोहर

34

MySQL रूट पासवर्ड बदलें।

यह विधि कमांड-लाइन इतिहास के पासवर्ड को उजागर करती है, इन कमांड को रूट के रूप में चलाया जाना चाहिए।

  1. Mysql कमांड लाइन टूल के माध्यम से लॉगिन करें:

    mysql -uroot -poldpassword
  2. यह आदेश चलाएँ:

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

या

  1. यह कमांड चलाएं, जो वर्तमान उपयोगकर्ता (इस मामले के लिए 'रूट') के लिए एक पासवर्ड सेट करता है:

    सेट वर्ड = पासवर्ड ('newpassword');


26

सबसे पहले इस कमांड को चलाएँ:

sudo mysql

और फिर आपको यह जांचना चाहिए कि आपके MySQL उपयोगकर्ता खातों का कौन सा प्रमाणीकरण तरीका उपयोग करता है। इस आदेश को चलाएं

SELECT user,authentication_string,plugin,host FROM mysql.user;

अब आप कुछ इस तरह देख सकते हैं:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             |                                           | auth_socket           | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+

उपरोक्त तालिका में, आप देख सकते हैं कि आपके सभी mysql उपयोगकर्ताओं की स्थिति स्टेटस है और यदि आपने रूट mysql_native_passwordकॉलम के लिए पासवर्ड सेट किया है तो इससे पहले कि आप प्लगइन कॉलम में देखें auth_socket। अपने रूट पासवर्ड को बदलने के लिए सभी को आपको चलना चाहिए:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

अपने चुनने के एक मजबूत पासवर्ड के लिए पासवर्ड बदलना सुनिश्चित करें। फिर अपने सर्वर को फिर से लोड करने के लिए अपने नए परिवर्तनों को प्रभावी रूप से चलाएं;

FLUSH PRIVILEGES;

तो फिर से अपने mysql द्वारा नियोजित प्रमाणीकरण विधियों की जाँच करें, इस आदेश द्वारा:

SELECT user,authentication_string,plugin,host FROM mysql.user;

और अब आउटपुट है:

+------------------+-------------------------------------------+-----------------------+-----------+
| user             | authentication_string                     | plugin                | host      |
+------------------+-------------------------------------------+-----------------------+-----------+
| root             | *3636DACC8616D997782ADD0839F92C1571D6D78F | mysql_native_password | localhost |
| mysql.session    | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| mysql.sys        | *THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE | mysql_native_password | localhost |
| debian-sys-maint | *CC744277A401A7D25BE1CA89AFF17BF607F876FF | mysql_native_password | localhost |
+------------------+-------------------------------------------+-----------------------+-----------+

जैसा कि आप अनुदान तालिका में देख सकते हैं कि आपका रूट खाता क्या है mysql_native_password । अब आप MYSQL शेल से बाहर निकल सकते हैं

exit;

यही है। अन्याय आपको mysql को फिर से शुरू करना चाहिए sudo service mysql restart। अब आप आसानी से अपने पासवर्ड के साथ एक रूट खाते के रूप में mysql में प्रवेश कर सकते हैं।


मुझे लगता है कि यह DigitalOcean से है, जो उबंटू 18.04 पर वर्चुअल बॉक्स पर चल रहे मेरे लिए एकमात्र समाधान था
केमल

यह ubuntu 18.04 में पूरी तरह से काम करता है। धन्यवाद।
महफूज

12

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

sudo dpkg-reconfigure mysql-server-5.5

MySQL डेमॉन को रोक दिया जाएगा, और आपको एक नया पासवर्ड दर्ज करने के लिए प्रेरित किया जाएगा।


1
इसे करने का यह एक बेहतर तरीका है। कुछ mysql त्रुटि के कारण मैं पिछली कमांड को चलाने में असमर्थ था ...
एंडी

sudo dpkg-reconfigure mysql-server-5.7 पर ubuntu 16.04
निक बैरेट

2
मैं sudo dpkg-reconfigure mysql-server-5.7Ubuntu 16.04 पर भागा , यह एक नया पासवर्ड दर्ज करने के लिए संकेत नहीं दिया।
फ्रेंक डर्नोनकोर्ट

अगर यह कहता है mysql-server is broken or not fully installed, एक का उपयोग कर सकते हैं sudo apt purge mysql*औरsudo apt install mysql-server
Pavel

12

यह आकर्षण की तरह काम करता है मैंने इसे Ubuntu 16.04 के लिए किया था। नीचे दिए गए लिंक का पूरा श्रेय जैसा कि मुझे वहां से मिला है। [ https://coderwall.com/p/j9btlg/reset-the-mysql-5-7-root-password-in-ubuntu-16-04-ltsdesing1]

MySQL बंद करो

sudo service mysql stop

MySQL सेवा निर्देशिका बनाएं। सुदो मक्दिर / वर / रन / मायस्कल्ड

MySQL उपयोगकर्ता को सेवा निर्देशिका में लिखने की अनुमति दें।

sudo chown mysql: /var/run/mysqld

MySQL मैन्युअल रूप से प्रारंभ करें, बिना अनुमति जाँच या नेटवर्किंग के।

sudo mysqld_safe --skip-grant-tables --skip-networking &

बिना पासवर्ड के लॉग इन करें।

mysql -uroot mysql

रूट यूजर के लिए पासवर्ड अपडेट करें। सुनिश्चित करें कि कम से कम रूट अकाउंट को नीचे क्वेरी द्वारा अपडेट किया गया है। कुछ चयन करें और यदि आप चाहें तो मौजूदा मूल्यों की जांच करें

UPDATE mysql.user SET 
authentication_string=PASSWORD('YOURNEWPASSWORD'), 
plugin='mysql_native_password' WHERE User='root';
EXIT;

MySQL को बंद करें।

sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

MySQL सेवा को सामान्य रूप से शुरू करें।

sudo service mysql start

11
  1. MySQL sudo service mysql stop को रोकें

  2. MySQL सेवा निर्देशिका बनाएं। सुडो म्कदिर / वर / रन / मायस्कल्ड

  3. MySQL उपयोगकर्ता को सेवा निर्देशिका में लिखने की अनुमति दें। sudo chown mysql: / var / run / mysqld

  4. MySQL मैन्युअल रूप से प्रारंभ करें, बिना अनुमति जाँच या नेटवर्किंग के। sudo mysqld_safe --skip-allow-tables --skip-नेटवर्किंग और

एक पासवर्ड के बिना 5.Log। mysql -uroot mysql

6. रूट उपयोगकर्ता के लिए पासवर्ड का उपयोग करें।

अद्यतन mysql.user सेट प्रमाणीकरण_string = PASSWORD ('YourNEWPASSWORD'), प्लगइन = 'mysql_native_password' जहां उपयोगकर्ता = 'रूट' और होस्ट '='% '; बाहर जाएं;

  1. MySQL को बंद करें। सुडो मायसक्लाडमिन -S /var/run/mysqld/mysqld.sock शटडाउन

  2. सामान्य रूप से MySQL सेवा शुरू करें। सुडो सेवा mysql start


1
नमस्ते, यह जवाब मेरे लिए काम करता है, लेकिन मुझे एक और आदेश का उपयोग करना पड़ा: UPDATE mysql.user SET authentication_string=PASSWORD('solutionclub3@*^G'), plugin='mysql_native_password' WHERE User='root';बिना AND Host='%'। धन्यवाद!
डेविड कोरल

10

यह समाधान MySQL के पिछले संस्करण का है। सॉकेट प्रमाणीकरण का उपयोग करके MySQL में प्रवेश करके, आप इसे कर सकते हैं।

sudo mysql -u root

तब निम्न आदेश चलाया जा सकता है।

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

विवरण यहाँ उपलब्ध हैं


1
मैं लॉगिन नहीं कर सका sudo mysql -u rootलेकिन मैं इसे करने sudo mysqlऔर ALTER USERकमांड चलाने में सक्षम था ।
इट्स

मुझे यह त्रुटि मिल रही थी: "आपका पासवर्ड वर्तमान नीति आवश्यकताओं को पूरा नहीं करता है"। मैं इसे यहाँ ठीक करने में सक्षम था: stackoverflow.com/a/43094873/9073437 । एक संशोधित पासवर्ड नीति सेट करने के बाद, सब कुछ ठीक काम किया।
Grandtour

10

मेरे लिए यही उपाय है। मैं Ubuntu 18.04 पर काम करता हूं: https://stackoverflow.com/a/46076838/2400373

लेकिन क्या अंतिम चरण में यह बदलाव महत्वपूर्ण है:

UPDATE mysql.user SET authentication_string=PASSWORD('YOURNEWPASSWORD'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost'; 

भगवान! आपका बहुत बहुत धन्यवाद! यह एकमात्र तरीका है जो मेरे मामले में काम कर रहा था। उस बेवकूफ सुरक्षित इंस्टॉलेशन स्क्रिप्ट के बारे में भूल जाइए क्योंकि इसने मेरे हौसले से स्थापित 5.7 चौड़े उपयोगकर्ताओं को बिना पासवर्ड पूछे कभी भी खुला रखा है ... अगर लिनक्स / उबंटू सुरक्षा-जागरूक उपयोगकर्ताओं के लिए है, तो MySQL सर्वर जैसे महत्वपूर्ण एप्लिकेशन की सुरक्षा करना इतना कठिन क्यों है ?
थॉमस अर्बन

7

उबंटू 18.04 और mysql संस्करण 14.14 डिस्ट्रीब 5.7.22 के लिए mysql पासवर्ड रीसेट करने के लिए नीचे दिए गए चरण का पालन करें।

चरण 1

sudo systemctl stop mysql

चरण 2

sudo systemctl edit mysql

यह कमांड नैनो एडिटर में एक नई फाइल खोलेगी, जिसे आप MySQL की सर्विस को ओवरराइड करने के लिए एडिट करेंगे। ये MySQL के लिए डिफ़ॉल्ट सर्विस पैरामीटर बदलते हैं। यह फ़ाइल खाली होगी, इसलिए निम्न सामग्री जोड़ें:

[Service]
ExecStart=
ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/run/mysqld/mysqld.pid --skip-grant-tables --skip-networking

चरण 3

sudo systemctl daemon-reload
sudo systemctl start mysql

चरण 4

sudo mysql -u root

चरण 5

FLUSH PRIVILEGES;

चरण 6

UPDATE mysql.user SET authentication_string = PASSWORD('new_password') WHEREuser = 'root';

चरण 7

UPDATE mysql.user SET plugin ='mysql_native_password' WHERE user = 'root';

चरण 8

sudo systemctl revert mysql

और अंत में

sudo systemctl restart mysql

अब आनंद लें


मुझे लगता है कि आपने चरण 2 पर सामग्री को याद किया। यह अधूरा है।
लुकास मेंडेस मोटा दा फोंसेका

6

रोजरपैक की टिप्पणी प्रतिध्वनित करना: यदि आप MySQL रूट पासवर्ड को नहीं जानते हैं और आप MySQL डेटा / सेटिंग्स की परवाह नहीं करते हैं, तो आप इसे पुनः इंस्टॉल कर सकते हैं और रूट के पासवर्ड को निम्नानुसार रीसेट कर सकते हैं:

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo rm -rf /var/lib/mysql
sudo apt-get install -y mysql-server mysql-client 

स्थापना के दौरान, आप रूट का पासवर्ड चुन सकते हैं:

यहां छवि विवरण दर्ज करें


2
काश, मैंने पासवर्ड रीसेट करने की कोशिश में अपना सिर पीटने के एक घंटे को बर्बाद करने के बजाय यहां शुरू किया था।
एरिक सस्टैंडैंड

3

यदि आप अपना वर्तमान पासवर्ड जानते हैं, तो आपको mysql सर्वर को बंद करने की आवश्यकता नहीं है। Ubuntu टर्मिनल खोलें। का उपयोग कर mysql में लॉगिन करें:

mysql - username -p

फिर अपना पासवर्ड टाइप करें। यह आपको mysql कंसोल में ले जाएगा। कंसोल के अंदर, टाइप करें:

> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

फिर फ्लश विशेषाधिकारों का उपयोग कर:

> flush privileges;

फिर तुम सब हो गया।


2

जब आप PASSWORD()उस सिस्टम पर MySQL का उपयोग करते हैं, जहां आप पासवर्ड बदलना चाहते हैं, तो यह पासवर्ड को Myte log in cleartext [ स्रोत ] में बदल सकता है। उन्हें, उनके बैकअप आदि को सुरक्षित रखना जैसे कि पासवर्ड मुझे बुरा लगता है, इसलिए मैं इसे निम्नानुसार करना पसंद करता हूं:

  1. अपनी स्थानीय मशीन पर, इसे अपने पासवर्ड से चलाएँ:

     mysql -u someuser -p < <(echo "SELECT PASSWORD('mypass');")

    बैश इतिहास (उबंटू के अलावा अन्य डिस्ट्रोस के लिए) को चालू करने से रोकने के लिए सामने वाले स्थान पर ध्यान दें, यह अलग तरह से काम कर सकता है - स्रोत )।

  2. अपने सर्वर मशीन पर, MySQL रूट पासवर्ड बदलने के लिए निम्न कमांड निष्पादित करें ( myhashपहले कमांड द्वारा मुद्रित आपके पासवर्ड के हैश के साथ बदलें ):

    mysql -u root -p < <(echo "SET PASSWORD FOR root@localhost = 'myhash';")
  3. वैकल्पिक रूप से, आइए थोड़ा पागल हो जाएं: अपने स्थानीय मशीन पर, clearऊपर दी गई कमांड में दिखाई देने वाले क्लीयरटेक् ट पासवर्ड को छिपाने के लिए अपनी वर्चुअल स्क्रीन को अपने टर्मिनल स्क्रीन के साथ साफ़ करें और शुद्ध करें।


2

"रूट" मैसूर उपयोगकर्ता पासवर्ड को अपडेट करने के लिए आपके मन में यह होना चाहिए कि आपको इसके लिए सुपर उपयोगकर्ता अनुमतियों की आवश्यकता होगी। यदि आपके पास सुपर उपयोगकर्ता विशेषाधिकार हैं, तो निम्न आदेश आज़माएं:

MySQL 5.7.6 और बाद में

sudo su
service mysql stop
mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
\q;
exit
mysql -u root -p MyNewPass

MySQL 5.7.5 और पहले का

sudo su
service mysql stop
mysql -u root
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');
\q;
exit
mysql -u root -p MyNewPass

2

आप यह सब की जरूरत नहीं है बस लॉग इन करें:

mysql -u root -p

फिर वर्तमान उपयोगकर्ता के पासवर्ड को mysql>संकेत के रूप में बदलें :

mysql> set password=password('the_new_password');
mysql> flush privileges;

1
यह एक सरल तरीका है! यह मेरे लिए mysql 5.7.21-0ubuntu0.17.10.1 के साथ काम कर रहा है
सर्जियो बेलेविसिज

2

इस विषय पर अधिकांश उत्तर पुराने हैं; इस जवाब के लिखे जाने तक MySQL में दो बड़े बदलाव हुए हैं:

1- यूजर टेबल में 'पासवर्ड' फील्ड को 'ऑथेंटिकेशन_स्ट्रिंग' कॉलम से बदल दिया गया है।

2- 'पासवर्ड' एन्क्रिप्शन फ़ंक्शन: PASSWORD ("कुछ टेक्स्ट का") को हटा दिया जाता है।

अधिक जानकारी के लिए कृपया इस लिंक को देखें: dev.mysql.com/doc/refman/8.0/en/resetting-permissions.html


1

पासवर्ड को रीसेट करने के बजाय यदि आप phpmyadminपासवर्ड या उपयोगकर्ता नाम दिए बिना कनेक्ट करने के लिए सेटअप करते हैं, तो स्थानीय मशीन के चारों ओर एक काम है । इसे शुरू करके देखें mysql, apacheआदि मैंने xamppअपनी स्थानीय मशीन में स्थापित किया है। इसलिए xampp शुरू करने से सभी आवश्यक सेवाएं शुरू हो जाएंगी। अब http://localhost/phpmyadminमुझे सभी डेटाबेस दिखा रहा है। यह पुष्टि करता है कि आपने phpmyadmin की कॉन्फ़िग फ़ाइल में उपयोगकर्ता नाम और पासवर्ड को सहेजा है जो कि phpmyadminइंस्टॉल लोकेशन में पाया जा सकता है । यदि आपने फ़ोल्डर xamppस्थापित किया है तो स्थापना phpmyadminके रूट फ़ोल्डर में पाया जा सकता है xampp। फ़ाइल passwordमें शब्द के लिए खोजें config.inc.php। वहां तुम पाओगे password और username


1

यदि आप प्रदान किए गए phpadmin gui के माध्यम से xampp पर तैनात हैं तो आप आसानी से mysql पासवर्ड बदल सकते हैं।

phpMyAdmin -> User Accounts -> Edit Privileges (Select the intended user) -> Change Password (Tab)

1

mysql 5.6 के लिए यह कमांड काम करता है और आप विज़ार्ड के माध्यम से पासवर्ड सेट कर सकते हैं:

sudo dpkg-reconfigure mysql-server-5.6

मैंने कोशिश की, लेकिन इसके काम नहीं कर रहा है .. मुझे यह कठिन त्रुटि मिल रही है .. क्या आप कृपया मदद कर सकते हैं? MySQL की यह स्थापना पहले से ही 5.7.21 में नवीनीकृत है, यदि आप को अभी भी mysql_upgrad
Parmar

1

आप mysql 5.7 रूट पासवर्ड को रीसेट करने के लिए इन कुछ चरणों को आजमा सकते हैं:

बंद करो Mysql सेवा 1

sudo /etc/init.d/mysql stop 

पासवर्ड के बिना रूट के रूप में लॉग इन करें sudo mysqld_safe --skip-grant-tablesऔर

लॉगइन mysql टर्मिनल के बाद आपको कमांड्स को निष्पादित करने की आवश्यकता है:

use mysql;




UPDATE mysql.user SET authentication_string=PASSWORD('solutionclub3@*^G'), plugin='mysql_native_password' WHERE User='root';


flush privileges;


sudo mysqladmin -S /var/run/mysqld/mysqld.sock shutdown

अपने mysql सर्वर को पुनरारंभ करने के बाद यदि आपको अभी भी त्रुटि का सामना करना पड़ रहा है, तो आपको MySQL 5.7 रूट पासवर्ड Ubuntu 16.04 पर आना चाहिए


1

आप इस कमांड का उपयोग कर सकते हैं:

UPDATE mysql.user SET Password=PASSWORD('newpwd') WHERE User='root';

उसके बाद फ्लश का उपयोग करें:

FLUSH PRIVILEGES;

1

MySQL पासवर्ड सेट करना

  1. MySQL डेटाबेस सेवा बंद करो

sudo /etc/init.d/mysql stop

  1. एक नई mysqld निर्देशिका बनाएँ

सुडोकू mddir / var / run / mysqld /

  1. mysql यूजर एक्सेस दे

sudo chown mysql / var / run / mysqld /

  1. MySQL को सुरक्षित मोड में शुरू करें ...

sudo mysqld_safe --स्काइप-ग्रांट-टेबल और

  1. एक पासवर्ड के बिना डेटाबेस सर्वर के लिए लॉगऑन

सुदो मायस्कल -उ जड़

  1. डिफ़ॉल्ट mysql डेटाबेस का उपयोग करें

mysql का उपयोग करें;

  1. रूट पासवर्ड बदलें

update user set authentication_string=PASSWORD("New_Passwore_Here") where उपयोगकर्ता = 'जड़';

  1. परिवर्तनों को सुरक्षित करें

    फ्लश विशेषाधिकार; बाहर जाएं;

  2. MySQL safe_mode को बंद करें और MySQL डिफ़ॉल्ट सेवा शुरू करें

sudo /etc/init.d/mysql stop

sudo /etc/init.d/mysql प्रारंभ

  1. रूट नए पासवर्ड का उपयोग करके MySQL डेटाबेस पर वापस लॉग इन करें

सुदो मायस्कल -उ जड़ -प

*** स्रोत: https://websiteforstudents.com/resetting-mysql-root-password-on-ubuntu-16-04-17-10-10-and-18-04-lts/


1

यदि आप 'रूट' उपयोगकर्ता पासवर्ड जानते हैं, तो उस क्रेडेंशियल्स के साथ mysql में लॉग इन करें। फिर पासवर्ड को अपडेट करने के लिए निम्न क्वेरी को निष्पादित करें।

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_passowrd';

0

MySQL पासवर्ड को बदलते / रीसेट करते समय ऊपर सूचीबद्ध निम्न कमांड मदद नहीं करते हैं। मैंने पाया कि टर्मिनल में जाना और इन कमांड का उपयोग करना व्यर्थ है। इसके बजाय कमांड sudo सब कुछ बंद करो। DELETE SYSTEM 32 विंडोज़ के लिए यदि वह मदद करता है।


1
सवाल ubuntuओएस नहीं विंडोज़ के बारे में है । DELETE SYSTEM 32 का विंडोज़ के लिए क्या मतलब है ?
एहसान्त

0

पासवर्ड दर्ज करने या बदलने के लिए sudo dpkg-reconfigure mysql-server-X.X(XX mysql संस्करण है जिसे आपने 5.6, 5.7) स्थापित किया है और फिर आप एक स्क्रीन का संकेत देंगे जहां आपको नया पासवर्ड सेट करना होगा और फिर अगले चरण में पासवर्ड की पुष्टि करें और बस एक पल के लिए प्रतीक्षा करें। बस।


0

मुझे Ubuntu 16.04.1 LTS पर इस रूट पर जाना था। यह ऊपर दिए गए कुछ अन्य उत्तरों में से कुछ का मिश्रण है - लेकिन उनमें से किसी ने भी मदद नहीं की। मैंने SO पर सब कुछ करने के लिए MySql वेबसाइट से अन्य सभी सुझावों की कोशिश करने में एक घंटे या उससे अधिक समय बिताया, मुझे आखिरकार इसके साथ काम करना पड़ा:

नोट: जब उसने उपयोगकर्ता रूट के लिए पासवर्ड दर्ज किया, तो मेरे पास मूल पासवर्ड नहीं था, इसलिए मैंने बस उसी पासवर्ड में प्रवेश किया नए पासवर्ड के रूप में इस्तेमाल किया जाएगा।

नोट: कोई /var/log/mysqld.log केवल /var/log/mysql/error.log

था। यह भी ध्यान दें कि यह मेरे लिए काम नहीं किया था:
sudo dpkg-reconfigure mysql-server-5.7

न ही किया था:
sudo dpkg-reconfigure --force mysql-server-5.5

MySQL सेवा निर्देशिका बनाओ।
sudo mkdir /var/run/mysqld

MySQL उपयोगकर्ता को सेवा निर्देशिका में लिखने की अनुमति दें।
sudo chown mysql: /var/run/mysqld

फिर:

  1. वर्तमान mysqld पिड को मार डालो
  2. sudo / usr / sbin / mysqld & के साथ mysqld चलाएं
  3. रन / usr / bin / mysql_secure_installation mysql_secure_installation से

    आउटपुट

    root @ myServer: ~ # / usr / bin / mysql_secure_installation

    MySQL सर्वर परिनियोजन को सुरक्षित करना।

    उपयोगकर्ता रूट के लिए पासवर्ड दर्ज करें:

    वैध पासवर्ड का उपयोग पासवर्ड का परीक्षण करने और सुरक्षा में सुधार करने के लिए किया जा सकता है। यह पासवर्ड की ताकत की जांच करता है और उपयोगकर्ताओं को केवल उन पासवर्ड को सेट करने की अनुमति देता है जो पर्याप्त सुरक्षित हैं। क्या आप मान्य PASSWORD प्लगइन सेटअप करना चाहेंगे?

    प्रेस y | Y फॉर यस, नो फॉर की कोई अन्य कुंजी: नहीं रूट के लिए मौजूदा पासवर्ड का उपयोग करना। रूट के लिए पासवर्ड बदलें? ((प्रेस y | Y फॉर हां, नो के लिए कोई अन्य कुंजी): y

    नया पासवर्ड:

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

    अनाम उपयोगकर्ताओं को निकालें? (प्रेस y | Y फॉर यस, नो के लिए कोई अन्य कुंजी): y सफलता।

    आम तौर पर, रूट को केवल 'लोकलहोस्ट' से कनेक्ट करने की अनुमति दी जानी चाहिए। यह सुनिश्चित करता है कि कोई व्यक्ति नेटवर्क से रूट पासवर्ड का अनुमान नहीं लगा सकता है।

    दूरस्थ लॉगिन को दूर करें? (प्रेस y | Y फॉर यस, नो के लिए कोई अन्य कुंजी): y सफलता।

    डिफ़ॉल्ट रूप से, MySQL 'परीक्षण' नामक एक डेटाबेस के साथ आता है जिसे कोई भी एक्सेस कर सकता है। यह भी केवल परीक्षण के लिए अभिप्रेत है, और इसे उत्पादन वातावरण में जाने से पहले हटा दिया जाना चाहिए।

    परीक्षण डेटाबेस निकालें और इसे एक्सेस करें? (प्रेस y | Y फॉर यस, नो के लिए कोई अन्य कुंजी): y

    • ड्रॉपिंग डेटाबेस परीक्षण ... सफलता।

    • परीक्षण डेटाबेस पर विशेषाधिकार हटा रहा है ... सफलता।

    विशेषाधिकार तालिकाओं को पुन: लोड करने से यह सुनिश्चित होगा कि अब तक किए गए सभी परिवर्तन तुरंत प्रभावी होंगे।

    अब विशेषाधिकार तालिका पुनः लोड करें? (प्रेस y | Y फॉर यस, नो के लिए कोई अन्य कुंजी): y सफलता।

    सब कुछ कर दिया!

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