ERROR 1698 (28000): उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध


382

मैं एक नया सर्वर स्थापित कर रहा हूं और इस समस्या में चल रहा हूं।

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

ERROR 1698 (28000): उपयोगकर्ता 'रूट' @ 'लोकलहोस्ट' के लिए प्रवेश निषेध

इससे कोई फर्क नहीं पड़ता कि मैं टर्मिनल (एसएसएच) के माध्यम से कनेक्ट करता हूं, PHPMyAdmin या एक MySQL क्लाइंट के माध्यम से, उदाहरण के लिए Navicat। वे सभी असफल हो जाते हैं।

मैंने mysql.user तालिका में देखा और निम्नलिखित प्राप्त करें:

+------------------+-------------------+
| user             | host              |
+------------------+-------------------+
| root             | %                 |
| root             | 127.0.0.1         |
| amavisd          | localhost         |
| debian-sys-maint | localhost         |
| iredadmin        | localhost         |
| iredapd          | localhost         |
| mysql.sys        | localhost         |
| phpmyadmin       | localhost         |
| root             | localhost         |
| roundcube        | localhost         |
| vmail            | localhost         |
| vmailadmin       | localhost         |
| amavisd          | test4.folkmann.it |
| iredadmin        | test4.folkmann.it |
| iredapd          | test4.folkmann.it |
| roundcube        | test4.folkmann.it |
| vmail            | test4.folkmann.it |
| vmailadmin       | test4.folkmann.it |
+------------------+-------------------+

जैसा कि आप देख सकते हैं, रूट की पहुंच होनी चाहिए।

सर्वर काफी सरल है, क्योंकि मैंने कुछ समय के लिए इसका निवारण करने का प्रयास किया है।

यह Apache, MySQL और PHP के साथ Ubuntu 16.04.1 LTS चल रहा है, ताकि यह वेबसाइटों को होस्ट कर सके, और iRedMail 0.9.5-1, ताकि यह मेल को होस्ट कर सके।

IRedMail को स्थापित करने से पहले MySQL डेटाबेस में लॉगिन ठीक काम करता है। मैंने यह भी कोशिश की, बस iRedMail स्थापित करना, लेकिन फिर रूट, यह भी काम नहीं करता है ...

अगर कोई मुझे बता सकता है कि मैं अपनी MySQL लॉगिन समस्या को कैसे ठीक करूँ या iRedMail को कैसे स्थापित करूँ, मौजूदा MySQL स्थापित के शीर्ष पर। और हां मैंने इंस्टॉलेशन टिप्स की कोशिश की और मुझे कॉन्फिग फाइल्स में वे वैरिएबल नहीं मिले।


मैंने इस लिंक का अनुसरण किया और पहला विकल्प मेरे लिए काम किया: askubuntu.com/questions/763336/…
Mikael Arhelger

3
sudo mysql_secure_installationयह तय करने का सबसे आसान तरीका है
सेर्गेई

जवाबों:


1119

उबंटू, mysql जैसी कुछ प्रणालियाँ डिफ़ॉल्ट रूप से UNIX INTERN_socket प्लगइन का उपयोग कर रही हैं ।

मूल रूप से इसका मतलब है कि: db_users इसका उपयोग करते हुए, सिस्टम उपयोगकर्ता क्रेडेंशियस द्वारा "सामान्य" होगा आप देख सकते हैं कि क्या आपका rootउपयोगकर्ता इस तरह से सेट अप कर रहा है:

$ sudo mysql -u root # I had to use "sudo" since is new installation

mysql> USE mysql;
mysql> SELECT User, Host, plugin FROM mysql.user;

+------------------+-----------------------+
| User             | plugin                |
+------------------+-----------------------+
| root             | auth_socket           |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
+------------------+-----------------------+

जैसा कि आप क्वेरी में देख सकते हैं, rootउपयोगकर्ता auth_socketप्लगइन का उपयोग कर रहा है

इसे हल करने के 2 तरीके हैं:

  1. आप mysql_native_passwordप्लगइन का उपयोग करने के लिए रूट उपयोगकर्ता सेट कर सकते हैं
  2. आप अपने db_userसाथ एक नया बना सकते हैं system_user(अनुशंसित)

विकल्प 1:

$ sudo mysql -u root # I had to use "sudo" since is new installation

mysql> USE mysql;
mysql> UPDATE user SET plugin='mysql_native_password' WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ service mysql restart

विकल्प 2: (आपके पास उपयोगकर्ता नाम के साथ your_SYSTEM_USER बदलें)

$ sudo mysql -u root # I had to use "sudo" since is new installation

mysql> USE mysql;
mysql> CREATE USER 'YOUR_SYSTEM_USER'@'localhost' IDENTIFIED BY '';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'YOUR_SYSTEM_USER'@'localhost';
mysql> UPDATE user SET plugin='auth_socket' WHERE User='YOUR_SYSTEM_USER';
mysql> FLUSH PRIVILEGES;
mysql> exit;

$ service mysql restart

याद रखें कि यदि आप विकल्प # 2 का उपयोग करते हैं तो आपको अपने सिस्टम उपयोगकर्ता नाम के रूप में mysql से कनेक्ट करना होगा ( mysql -u YOUR_SYSTEM_USER)

नोट: कुछ प्रणालियों पर (उदाहरण के लिए, डेबियन स्ट्रेच) 'ओडिस_सोकेट' प्लगइन को 'यूनिक्स_सोकेट' कहा जाता है , इसलिए संबंधित एसक्यूएल कमांड होना चाहिए:UPDATE user SET plugin='unix_socket' WHERE User='YOUR_SYSTEM_USER';

अपडेट: @ andy की टिप्पणी से ऐसा लगता है कि mysql 8.xx ने इसे बदलने के auth_socketलिए caching_sha2_passwordmysql 8.xx के साथ सिस्टम सेटअप अपडेट / प्रतिस्थापित नहीं किया है, हालाँकि ऊपर दिए गए चरण आपको समस्या को समझने में मदद करेंगे। यहाँ उत्तर है:

MySQL 8.0.4 के रूप में एक बदलाव यह है कि नया डिफ़ॉल्ट प्रमाणीकरण प्लगइन 'caching_sha2_password' है। नए 'your_SYSTEM_USER' में यह सामान्य प्लगइन होगा और आप "mysql -u your_SYSTEM_USER -p" के साथ अब bash शेल से लॉग इन कर सकते हैं और प्रॉम्प्ट पर इस उपयोगकर्ता के लिए पासवर्ड प्रदान कर सकते हैं। "अद्यतन उपयोगकर्ता सेट प्लगइन" कदम के लिए कोई ज़रूरत नहीं है। 8.0.4 के डिफ़ॉल्ट डिफ़ॉल्ट प्लगइन अपडेट के लिए देखें, https://mysqlserverteam.com/mysql-8-0-4-new-default-authentication-plugin-caching_sha2_password/


5
विकल्प 1 ने मेरे लिए काम किया। लेकिन फिर मुझे दौड़ने की भी जरूरत थी sudo gedit /etc/phpmyadmin/config.inc.php। फिर मैंने इसके लिए एक खोज की AllowNoPasswordऔर दोनों पंक्तियों को जोड़ दिया। तब मैं बिना पासवर्ड के रूट के रूप में लॉगिन करने में सक्षम था।
जो

7
विकल्प 2 काम करता है। मुझे लगता है कि नया उपयोगकर्ता बनाने और रूट को छोड़ने के लिए इसका हमेशा सबसे अच्छा अभ्यास है!
पासिन्दुजय

2
IDENTIFIED BY ''बिट शायद होना चाहिएIDENTIFIED BY 'YOUR_PASSWD'
YakovL

4
अंत में, एक जवाब जो वास्तव में काम करता है !! वहाँ एक zillion जवाब वहाँ कह रही है mysqld_safe --skip-grant-tablesआदि, और यह काम नहीं कर रहा है।
स्टीवर्ट

4
ठीक है, यह कैसे करना है, अगर sudo mysql -u root -pमुझे अंदर नहीं जाने दिया?
हृदयोज टी

173

यहा जांचिये:

MYSQL का नया संस्करण इस तरह से है।

नए my-sql में अगर इंस्टाल करते समय पासवर्ड खाली रह जाता है तो यह auth_socketप्लगइन पर आधारित है ।

सही तरीका sudoविशेषाधिकार के साथ my-sql में लॉगिन करना है ।

$ sudo mysql -u root -p

और फिर पासवर्ड का उपयोग करके अपडेट करना:

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

एक बार जब यह stop and startmysql सर्वर हो जाता है।

$  sudo service mysql stop
$  sudo service mysql start

पूर्ण विवरण के लिए आप इस लिंक को देख सकते हैं ।

किसी भी संदेह के लिए टिप्पणी करें।


4
इसने मेरे लिए उबंटू 18 का उपयोग करके काम किया। बहुत बहुत धन्यवाद।
बजे पीटर ड्रिनान

10
Ubuntu 18.04
sgtkuncoro

2
ठीक वही जो मेरे द्वारा खोजा जा रहा था। धन्यवाद :) उबंटू 18 पर काम किया
मंथन_अमन

2
इसने एक आकर्षण की तरह काम किया, लुबंटू 19.04
कव्वराध जूल

3
यह अच्छा काम करता है। लिंक उपयोगी है।
kjohri

9

मैं एक डेबियन 8 वीएम पर यह मुद्दा रख रहा था कि मैं अपने विंडोज 10 डेस्कटॉप पर पुट्टी के माध्यम से बातचीत कर रहा था।

मैंने यहां विभिन्न सुझावों की कोशिश की, लेकिन कुछ भी काम नहीं आया और मैं डेबियन होस्ट पर मारियाबीडी चला रहा हूं। अंत में मैंने पाया कि मैं db सर्वर को सुरक्षित मोड में शुरू नहीं कर सकता, लेकिन मुझे इसकी आवश्यकता नहीं थी और निम्न आदेशों ने वास्तव में मेरे लिए काम किया है अर्थात MySql / MariaDB सर्वर में एक नए बनाए गए MySql उपयोगकर्ता को लॉग इन करने की अनुमति दी है:

sudo service mysql restart
sudo mysql # logs in automatically into MariaDB
use mysql;
update user set plugin='' where user='your_user_name';
flush privileges;
exit;
sudo service mysql restart # restarts the mysql service

यदि उपरोक्त आपके लिए बहुत काम नहीं करता है, तो ऊपर दिए गए zetacu के पोस्ट ( zetacu ) में उल्लिखित चरणों का पालन करें और फिर मेरे चरणों का पालन करें।

अब आपको दूरस्थ टर्मिनल क्लाइंट का उपयोग करने में सक्षम होना चाहिए और कमांड का उपयोग करके सुरक्षित रूप से mysql में लॉग इन करना चाहिए:

mysql -u your_user_name -p

* संकेत दिए जाने पर पासवर्ड टाइप करें


यह सरल है। ठीक है, केवल पहले आदेश को दूसरे को निष्पादित करने की अनुमति नहीं है, इसलिए मैं इसे संपादित करने को समायोजित करूंगा - कृपया देखें कि क्या मैं सही हूं ...
कोकबीरा

7

मेरा सुझाव है कि मैसकल कनेक्शन को हटा दें -

UPDATE- यह मैसूर संस्करण 5.5 के लिए है, यदि आपका संस्करण अलग है, तो कृपया इसके अनुसार पहली पंक्ति को बदलें

sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-5.5 mysql-client-core-5.5
sudo rm -rf /etc/mysql /var/lib/mysql
sudo apt-get autoremove
sudo apt-get autoclean

और फिर से इंस्टॉल करें लेकिन इस बार एक रूट पासवर्ड खुद सेट करें। इससे बहुत प्रयास बचेंगे।

sudo apt-get update
sudo apt-get install mysql-server

@ingernet शायद कुछ अन्य मुद्दों के कारण जो आपने फिर से स्थापित करते समय उपेक्षित कर
दिए

@PJBrunet शायद मैसूर के आपके संस्करण का कारण अलग है
Eminem347

उचित पर्याप्त है, लेकिन एक सर्व-उद्देश्यीय समाधान सबसे अच्छा है।
पीजे ब्रुनेट

6

यहां बिना किसी समाधान के संघर्ष के घंटों के बाद, यह मेरे लिए काम करता है तब मुझे एक यूट्यूब वीडियो मिला जहां यह कहता है कि पासवर्ड कॉलम को अब प्रमाणीकरण_स्ट्रिंग कहा जाता है। इसलिए मैं अपना पासवर्ड निम्नानुसार बदल सकता था: पहले टर्मिनल से mysql में मिलता हूं

sudo mysql

फिर mysql के अंदर जो कुछ भी हो mysql> के बाद

mysql> use mysql
mysql> update user set authentication_string=PASSWORD("mypass") where user='root';
mysql> flush privileges;
mysql> quit;

इस बिंदु पर आप अपने सामान्य टर्मिनल स्थान पर वापस mysql से बाहर हैं। प्रभावी होने के लिए आपको mysql को पुनरारंभ करना होगा। उस प्रकार के लिए निम्नलिखित हैं:

sudo service mysql restart

बेहतर समझ के लिए इस वीडियो लिंक का संदर्भ लें


5

चरण 1। sudo mysql -u root -p

चरण 2। USE mysql;

चरण 3। ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

यहां 'एडमिन' आपका नया पासवर्ड है, यो इसे बदल सकते हैं।

चरण 4। exit

धन्यवाद। आप कर चुके हैं।


5

सूदो की जरूरत नहीं

डेटाबेस को 2 ऑल-विशेषाधिकार खातों के साथ आरंभ किया गया है: पहला "रूट" है जो दुर्गम है और दूसरा आपके उपयोगकर्ता नाम (कमांड के साथ चेक whoami) के साथ है ।

रूट खाते तक पहुंच को सक्षम करने के लिए, आपको अपने उपयोगकर्ता नाम के साथ लॉगिन करना होगा

mysql -u $(whoami)

और रूट के लिए मैन्युअल रूप से पासवर्ड बदलें

use mysql;
set password for 'root'@'localhost' = password('YOUR_ROOT_PASSWORD_HERE');
flush privileges;
quit

'मूल' के रूप में लॉगिन करें

mysql -u root -p

आप mysql के वास्तविक संस्करण के लिए सही उत्तर दे रहे हैं, धन्यवाद!
ह्यूगो एस

3

पहला चरण: /etc/phpmyadmin/config.inc.php पर जाएं फिर उन लाइनों को अनकम्प्रेस्ड करें जहां आपको AllowNoPassword मिलता है। दूसरा चरण: अपने mysql डिफ़ॉल्ट खाते में लॉगिन करें

mysql -u root -p
use mysql;
update user set plugin="" where user='root';
flush privilege;

और बस यही!


3

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

mysql --user=root mysql
CREATE USER 'some_user'@'%' IDENTIFIED BY 'some_pass';
GRANT ALL PRIVILEGES ON *.* TO 'some_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

3

मुझे भी पहली बार उसी मुद्दे का सामना करना पड़ा।

अब यह तय हो गया है:

सबसे पहले, आप /etc/mysql/mysql.conf.d/mysqld.cnfफ़ाइल की प्रतिलिपि बनाएँ और में अतीत /etc/mysql/my.cnf

आप इसे कमांड द्वारा कर सकते हैं:

sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/my.cnf

अब आइये आराम करें पासवर्ड:

अपने टर्मिनल में निम्नलिखित कमांड का उपयोग करें:

sudo service mysql stop 
sudo service mysql start
sudo mysql -u root

अब आप mysql कंसोल के अंदर हैं।

तो चलिए अपने रूट पासवर्ड को रीसेट करने के लिए कुछ क्वेश्चन लिखते हैं

USE mysql
update mysql.user set authentication_string=password('newpass') where user='root' and Host ='localhost';
update user set plugin="mysql_native_password"; 
flush privileges;
quit

अब हम साफ कर सकते हैं /etc/mysql/my.cng

अपने संपादक में उपरोक्त फ़ाइल खोलें और फ़ाइल के अंदर की पूरी पंक्तियों को हटा दें।

उसके बाद चलो mysql को पुनः आरंभ करें:

sudo mysql service restart 

अब नए बनाए गए पासवर्ड के साथ mysql का उपयोग करें:

sudo mysql -u root -p

अंत में अपना नया बनाया हुआ पासवर्ड डालें।


1
अच्छा काम किए ! लेकिन आपके उत्तर को अद्यतन करने की आवश्यकता है !! /etc/mysql/my.cnf और /etc/mysql/my.cng नहीं और सेवा के लिए अपनी sudo सेवा को फिर से शुरू करें mysql पुनरारंभ
Essayoub

3

मुझे यहां घंटों शोध के बाद अपना समाधान मिला।

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='%';
EXIT;

MySQL को बंद करें।

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

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

sudo service mysql start

यह मुझे एक मिथक संकेत मिला जब कुछ भी नहीं होगा! धन्यवाद!
यूजरएक्स

2

आप रूट उपयोगकर्ता के साथ MySQL एक्सेस करना चाहते हैं, लेकिन आप रूट का सही पासवर्ड प्रदान नहीं कर रहे हैं।

यदि आपको रूट के लिए एक नया पासवर्ड सेट करने की आवश्यकता है , तो MySQL की साइट पर यह करने के लिए महान दस्तावेज हैं: http://dev.mysql.com/doc/refman/5.7/en/resetting-permissions.html

मैं इस प्रक्रिया को यहाँ नहीं दिखाऊँगा क्योंकि उपरोक्त लिंक पर MySql प्रलेखन यह स्पष्ट और संक्षिप्त है


Awser के लिए धन्यवाद, लेकिन मैं इसे काम नहीं कर सका, इसलिए मैंने इसके बजाय एक pgSQL के साथ iRedMail को स्थापित करने के लिए चुना है।
लोकमन

रोजर फोकमैन! यह जानकर अच्छा लगा कि आपने अपनी समस्या को किसी भी तरह से हल किया।
क्रिस्टियन गोनक्लेव्स

कड़ियाँ टूटती हैं। mysql.com के वर्षों में कई टूटे हुए लिंक हैं। आपको संबंधित जानकारी को यहां कॉपी और पेस्ट करना चाहिए, जो तब तक ठीक है जब तक आप स्रोत का विवरण दें।
हंस

1

ओएस: Ubuntu18.04

mysql: 5.7

  1. जोड़ने skip-grant-tablesmysqld.cnf की फ़ाइल अंत करने के लिए

  2. my.cnf को cp करें

sudo cp /etc/mysql/mysql.conf.d/mysqld.cnf /etc/mysql/my.cnf
  1. पासवर्ड रीसेट करें
(base)   ~ sudo service mysql stop 
(base)   ~ sudo service mysql start
(base)   ~ mysql -uroot
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.25-0ubuntu0.18.04.2 (Ubuntu)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed, 3 warnings
mysql> update mysql.user set authentication_string=password('newpass') where user='root' and Host ='localhost';
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> update user set plugin="mysql_native_password"; 
Query OK, 0 rows affected (0.00 sec)
Rows matched: 4  Changed: 0  Warnings: 0

mysql>  flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Bye
  1. skip-grant-tablesmy.cnf से निकालें
(base)   ~ sudo emacs /etc/mysql/mysql.conf.d/mysqld.cnf 
(base)   ~ sudo emacs /etc/mysql/my.cnf                 
(base)   ~ sudo service mysql restart
  1. mysql खोलें
(base)   ~ mysql -uroot -ppassword 
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.7.25-0ubuntu0.18.04.2 (Ubuntu)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 
  1. पासवर्ड नीति की जाँच करें
mysql> select @@validate_password_policy;
+----------------------------+
| @@validate_password_policy |
+----------------------------+
| MEDIUM                     |
+----------------------------+
1 row in set (0.00 sec)


mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name                        | Value  |
+--------------------------------------+--------+
| validate_password_dictionary_file    |        |
| validate_password_length             | 8      |
| validate_password_mixed_case_count   | 1      |
| validate_password_number_count       | 1      |
| validate_password_policy             | MEDIUM |
| validate_password_special_char_count | 1      |
+--------------------------------------+--------+
6 rows in set (0.08 sec)!
  1. का विन्यास बदलें validate_password
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.05 sec)

mysql> set global validate_password_mixed_case_count=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_number_count=3;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_special_char_count=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_length=3;
Query OK, 0 rows affected (0.00 sec)

mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name                        | Value |
+--------------------------------------+-------+
| validate_password_dictionary_file    |       |
| validate_password_length             | 3     |
| validate_password_mixed_case_count   | 0     |
| validate_password_number_count       | 3     |
| validate_password_policy             | LOW   |
| validate_password_special_char_count | 0     |
+--------------------------------------+-------+
6 rows in set (0.00 sec)

ध्यान दें कि आपको पता होना चाहिए कि आप किस कारण से त्रुटि करते हैं? validate_password_policy?

आपको नीति को भरने या नीति को बदलने के लिए अपना पासवर्ड रीसेट करने का निर्णय लेना चाहिए।


0

मेरे साथ भी ऐसा हुआ है। समस्या mysql रेपो के साथ है जो पहले से ही linux distro के साथ आती है। तो जब आप बस करते हैं: $ sudo apt install mysql-server यह mysql को उनके डिफ़ॉल्ट रेपो से स्थापित करता है जो यह समस्या देता है। तो इससे उबरने के लिए आपको mysql इंस्टॉल करने की आवश्यकता है $ sudo apt remove mysql* --purge --auto-remove

फिर आधिकारिक mysql वेबसाइट MySQL APT रेपो से mysql रेपो डाउनलोड करें कि कैसे रेपो को जोड़ने और इसे स्थापित करने के लिए उनके प्रलेखन का पालन करें। यह कोई मुद्दा नहीं देता है। जैसा कि @zetacu द्वारा उत्तर दिया गया है, आप यह सत्यापित कर सकते हैं कि mysql रूट अब वास्तव में mysql_native_bpass प्लगइन का उपयोग करता है


0

मेरे मामले में,

dev@Dev-007:~$ mysql -u root -p
Enter password: 
ERROR 1698 (28000): Access denied for user 'root'@'localhost'

मुझे यकीन है कि मेरा पासवर्ड सही था अन्यथा त्रुटि कोड होगा ERROR 1045 (28000): Access denied for user

तो मैं sudo का उपयोग कर relogin,

dev@Dev-007:~$ sudo mysql -u root -p

इस समय यह मेरे लिए काम किया। डॉक्स देखें

और फिर रूट पासवर्ड बदलें,

mysql> alter user 'root'@'%' identified with mysql_native_password by 'me123';
Query OK, 0 rows affected (0.14 sec)

mysql> 

फिर सर्वर का उपयोग करके पुनः आरंभ करें sudo /etc/init.d/mysql restart

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