mysql登録エラーを解決します。'Access denied for user'root'@local host'


まず、どうやって急にmysql用命令行を使うのか分かりません。workbenchは登録できません。全部「Access denied for user 'root'@'local host'を提示します。
データベースをアンインストールして何度も再インストールしてもだめです。データの整理が不潔なようです。解決の過程で出会った穴をここに記録して共有します。
有効な操作履歴:
1、まず権限をスキップしてmysqlに登録し、user表を確認します。
mysqlサービスを停止します。
セキュリティモードで$ sudo service mysql stopを起動する。
注意:
ヒントはmysqldかもしれませんsafe Directory'/var/run/mysqld'for UNIX socket file don't exist
解決方法:(筆者がsudoを追加する必要があることを試してみた)

sudo mkdir -p /var/run/mysqld
sudo chown mysql:mysql /var/run/mysqld
上のセキュリティモードの再実行MySQL~$ sudo mysqld_safe --skip-grant-tables &今回の提示文は表示されました。
今回の登録はパスワードを使わなくてもいいです。mysql-u rootバックで登録します。
sql文でmysql.user表を調べたら、次のようになります。
画像を追加(後で追加)
次のようにすると提案する人もいますが、試してみませんでした。
Open&Edit/etc/my.cnf or/etc/mysql/my.cnf,depending on your distro.
Add skyp-grant-tables under[mysqld]
2、userを発見したpluginはsocket_pluginをmysql_に変更しますnative_password
rootのplugin権限を変更:

update mysql.user set authentication_string=PASSWORD('newPwd'), plugin='mysql_native_password' where user='root';
flush privileges;
quit;
(ここの修正は正確にしてください。筆者と同じように、うっかりしてpluginの修正内容を一文字少なくして、また次のように振り回されないように注意してください。)
3、userテーブルは他のユーザーがいます。rootは登録できません。他のユーザーで登録してもいいです。調べたら効果的な操作があります。
mysqlのインストールディレクトリでは、一般的に/etc/mysqlの中にdebain.cnfファイルがあります。中にはuser、passwordがあります。これを使ってログインして、パスワードを使って最後にコピーして、またuserテーブルrootのpluginを修正して、操作は同じです。
mysqlサービスを再起動します。
ロトユーザーでログインできます。
ブログを参照してください:
MySQL ERROR 1698(28000)エラーhttps://www.jb51.net/article/117566.htm
mysql現在使用されているプロファイルmy.cnfを確認する方法https://www.jb51.net/article/110395.htm
linux--Ubuntuは、mysqlの登録名とパスワードを変更し、phpmyadminをインストールするhttps://www.jb51.net/article/174925.htmを確認する。
締め括りをつける
以上は小编が绍介したmysql登录エラーの解决です。'Access denied for user ''root'@'local host''、皆さんのために役に立つと思います。