Win10 での MySQL 8.0 ログインでユーザー 'root'@'localhost' のアクセスが拒否される (パスワード使用: YES) 問題の解決方法

Win10 での MySQL 8.0 ログインでユーザー 'root'@'localhost' のアクセスが拒否される (パスワード使用: YES) 問題の解決方法

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

しかし、私が楽しくタイプしているように

mysql -uroot -p

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

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

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

スキップ許可テーブル

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

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

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

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

始めましょう。

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

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

ネットストップmysql

3. パスワード入力手順をスキップする

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

(注意:ファイル名とパスはご自身のものと一致する必要があります)

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

4. サーバーを再起動する

ネットスタートMySQL

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

mysql -uroot -p

パスワードを入力すると正常にログインできます。

(数字の1は文字のlに非常に似ています)

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

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

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

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

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

ネットで検索して既成の方法、参考記事を見つけた

パスワードは無期限です

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

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

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

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

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

以下もご興味があるかもしれません:
  • mysql5.7.20 での最初のログイン失敗に対する簡単な解決策
  • MySQL 5.7 のルートパスワードログイン問題の解決策
  • MySQL Community Server 5.7.16 のグリーン バージョンをインストールしてリモート ログインを実装する方法
  • Ubuntu 16.04 に MySQL 5.7.17 をインストールした後、ログイン時に発生するエラー 1045 (28000): ユーザー ''root''@''localhost'' へのアクセスが拒否される問題を解決します。
  • Mysql 5.7.17 をインストールした後、MySQL にログインするチュートリアル
  • データフォルダなしでMySQL 5.7をインストールした後にログインできない問題を解決する

<<:  JSON.stringify のさまざまな用途のまとめ

>>:  Windows 2008 Server サブドメインを親ドメインに追加すると、ドメインが既に存在するというエラー メッセージが表示されます。

推薦する

HTTPSの最も優れた説明

皆さんおはようございます。しばらく記事を更新していませんでした。実は、私は流行中に1か月以上家にいて...

HTML でのテキストエリアの使用と一般的な問題およびケース分析

textarea タグはよく使われる HTML タグです。主に長いテキストを入力するときに改行するた...

MySQLからElasticsearchにデータを同期する方法の詳細な説明

目次1. 同期の原理2. ログスタッシュ入力JDBC 3. go-mysql-elasticsear...

html2canvas で破線境界線を実装する例

html2canvas は、HTML 要素からキャンバスを生成するライブラリです。描画されるキャンバ...

MySQL 8.0.15 バージョンのインストールチュートリアル Navicat.list への接続

落とし穴1. ネット上の多くのチュートリアルでは環境変数を設定するファイル名はmy.iniと書いてあ...

MySQLデータの同時更新を処理する方法

UPDATE はロックしますか?以下のような場合、SQL文はロックされますか? テーブル1を更新しま...

MySQLの挿入文字化け問題を解決する方法

問題の説明: MySQL に中国語の文字を挿入する場合、または MySQL では中国語の文字が正常に...

nginx プロキシ ポート 80 からポート 443 への実装

nginx.conf設定ファイルは次のとおりです。 ユーザー nginx; ワーカープロセス 1; ...

MySQL データベースの鉄則 (要約)

適切なデータベース仕様は、ソフトウェア実装の複雑さを軽減し、通信コストを削減するのに役立ちます。この...

Dockerfileを使用してApacheイメージを作成する方法

目次1. Dockerイメージ2. 既存のイメージに基づいてインスタンスを作成する3. ローカルテン...

Dockerを使用して分散lnmpイメージを作成する

目次1. Docker分散lnmpイメージ生成1. Nginx、MySQL、PHPコンテナを実行する...

npm グローバル モジュールのデフォルトのインストール パスを変更するためにノードのインストールをカスタマイズする手順

node を D ドライブにインストールしましたが、C ドライブのスペースを占有したくなかったため、...

TypeScript ジェネリックパラメータのデフォルト型と新しい厳密なコンパイルオプション

目次概要コンポーネントクラスの型定義を作成するジェネリック型を使用してPropsとStateを定義す...