web-dev-qa-db-ja.com

#1698-ユーザー 'root' @ 'localhost' mysql -5.7およびubuntu-16.04のアクセスが拒否されました

Phpmyadminにログインしているときにエラーが発生します。

新規インストールではありません。

また、コマンドラインからログインしようとしました。

1。

mysql -u root -p

 **error :** ERROR 1698 (28000): Access denied for user 'root'@'localhost'

2。

Sudo mysql -u root -p

上記のコマンドを使用してmysqlに正常にログインしました。

ただし、ケース1ではそうではありません。

Mysql details:
username : root 
password : 
5

ユーザーテーブルにプラグイン値を設定することで上記の問題を解決しました

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

$ service mysql restart
2

これは、MySQLがデフォルトでローカルシステムアカウントを使用してユーザーrootとしてログインするためです。これは、プラグイン「unix_socket」で行われます。または、パスワードが変更された可能性があります。

MySQLユーザールートがPhpMyAdminにログインできるようにするには、MySQLコマンドプロンプトで次のコマンドを実行します

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

PhpMyAdmin を参照してください

5
SagarVirpara

ステップ1. Sudo mysql -u root -p

ステップ2. USE mysql;

ステップ3. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'admin';

ここで、「admin」は新しいパスワードです。変更できます。

ステップ4。exitありがとう。できました。

3
Y. Joy