入力が正しいにもかかわらず、MySQL 8.0 でアクセスが拒否される問題を解決する

入力が正しいにもかかわらず、MySQL 8.0 でアクセスが拒否される問題を解決する

最近、MySQL を学び始めました。インストールはスムーズに進み、インターネット上の既成のチュートリアルに従って正常にインストールできました。

しかし、

mysql -uroot -p

再度パスワードを入力すると、このような状況に遭遇しました

ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードの使用: YES)

オンラインで多くの解決策を見つけましたが、基本的に解決策は1つしかありません。それは、.iniファイルにmysqldエントリを追加することです。

スキップ許可テーブル

その後、サーバーを再起動して、もう一度手順に従います(最後にパスワードを入力しないでください)。ただし、まだ停止するステートメントがあります。

ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワードの使用: NO)

インターネットでいろいろな方法を組み合わせて一つずつ試してみた結果、ようやく成功しました。

全体的な考え方は、.ini 構成ファイルの内容を変更することですが、コマンドラインから変更します。バージョンの反復により、ファイルを直接変更する以前の方法がブロックされたためかどうかはわかりません。いずれにせよ、MySQL 8.0 ではコマンドラインから変更することが可能です。

始めましょう。

管理者としてcmdを開き、MySQLのbinディレクトリに切り替えます。

MySQLサーバーをシャットダウンする

ネットストップmysql

パスワード入力手順をスキップします(注意:ファイル名とパスは自分のものと一致する必要があります)

mysqld --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables

スクリーンショットで囲んだような文が表示されたら成功を意味します

サーバーを再起動します

ネットスタートMySQL

MySQLサーバーにログインする

mysql -uroot -p

パスワードを入力すると正常にログインできます。 (数字の1は文字のlに非常に似ています)

この時点でほぼ完了ですが、

データベースを表示します。

MySQL からのフィードバックは次のとおりです。

このステートメントを実行する前に、ALTER USER ステートメントを使用してパスワードをリセットする必要があります。

私の推測では、MySQL はインストール中に提供されたランダム パスワードが安全でないと判断し、ユーザーにパスワードのリセットを求めます。

ネットで検索したら、既成の解決策が見つかりました。

参考記事: https://dev.mysql.com/doc/refman/5.7/en/alter-user.html

パスワードは無期限です

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password' PASSWORD EXPIRE NEVER;

パスワードには期限があります

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password' PASSWORD EXPIRE;

その後、再度サーバーにログインすると正常に動作します。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Win10 での MySQL 8.0 ログインでユーザー 'root'@'localhost' のアクセスが拒否される (パスワード使用: YES) 問題の解決方法
  • Linux で MySQL に接続するときに発生するエラーを解決する方法: ユーザー 'root'@'localhost' へのアクセスが拒否されました (パスワードの使用: YES)
  • Ubuntu システムにおける Mysql ERROR 1045 (28000): ユーザー root@localhost へのアクセスが拒否される問題の解決方法
  • MySQL でデータベースを作成した後、ユーザー ''root''@''%'' によるデータベース ''xxx'' へのアクセスが拒否される問題を解決する
  • Ubuntu 16.04 に MySQL 5.7.17 をインストールした後、ログイン時に発生するエラー 1045 (28000): ユーザー ''root''@''localhost'' へのアクセスが拒否される問題を解決します。
  • MySQLをインストールした後、ログイン時にルートアカウントプロンプトが表示されます。mysql ERROR 1045 (28000): アクセスが拒否されました。解決策
  • mysql ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワード使用: YES) 解決策

<<:  フォームで完全な選択または逆選択効果を実現する JavaScript

>>:  Baotaパネルを再起動すると、「-ModuleNotFoundError: No module named 'geventwebsocket'」というメッセージが表示されます。

推薦する

TomcatはXMLを解析し、リフレクションを通じてオブジェクトを作成します。

次のサンプル コードでは、Tomcat が XML を解析し、リフレクションを通じてオブジェクトを作...

Vue3 の SetUp 関数のプロパティとコンテキスト パラメータの詳細な説明

1. setUp関数の最初のパラメータpropsセットアップ(プロパティ、コンテキスト){}最初のパ...

Ubuntuはポート22を開きます

シナリオssh 経由で Ubuntu サーバーに接続するには、xshell ツールを使用する必要があ...

UTF8 でエンコードされた Web ページにファイルが含まれている場合の、ページの前の空白行の解決方法

<br />このページはUTF8エンコードを使用しており、ヘッダーとフッターはテンプレー...

MySQL の制限パフォーマンス分析と最適化

1. 結論構文: 制限オフセット、行結論: 同じ行条件では、オフセット値が大きいほど、limitステ...

MySQL で複数のテーブルにビューを作成する方法

MySQLでは、2つ以上のベーステーブルにビューを作成します。学生テーブルとstu_infoテーブル...

CentOS 7 で MySQL 8 の複数のインスタンスを設定する詳細なチュートリアル (必要な数だけ設定できます)

原因最近、プロジェクトのリファクタリングを始めたのですが、マスタースレーブと読み取り書き込み分離を使...

Windows での MySQL 5.7.18 のインストールと設定のチュートリアル

この記事では、WindowsでのMySQL 5.7.18のインストールと設定のチュートリアルを参考ま...

JS+AJAX は、州、市、地区のドロップダウン リストのリンクを実現します。

この記事では、州、市、地区のドロップダウンリストのリンクを実現するためのJS + AJAXの具体的な...

JavaScriptプロトタイプチェーン図のまとめと実践

目次プロトタイプチェーンプロトタイプチェーンに基づいてシンプルなJQueryライブラリを実装すること...

XHTML の一般的な構造タグ

構造本文、見出し、HTML、タイトル文章abbr、頭字語、アドレス、引用ブロック、br、引用、コード...

Mysqlの自動増分IDについて知らないことがあるかもしれません

導入: MySQL を使用してテーブルを作成する場合、通常は自動インクリメント フィールド (AUT...

Docker のタイムゾーンの問題とデータ移行の問題

最新のソリューション: -v /usr/share/zoneinfo/Asia/Shanghai:/...

mysql5.7.21 の異常起動を修正する方法

同僚から、停電のため MySQL インスタンスを起動できないという報告がありました。 innodb_...

iframe src 割り当ての問題 (サーバー側)

今日この問題に遭遇しました。サーバー側でiframeのsrc値を再割り当てし、iframeにIDを追...