MySQL8 でパスワードを忘れた後にパスワードをリセットする方法 (MySQL の古い方法は機能しません)

MySQL8 でパスワードを忘れた後にパスワードをリセットする方法 (MySQL の古い方法は機能しません)

コマンドライン mysqld –skip-grant-tables は mysql8 では正常に起動できず、パラメータは ini ファイルで起動できません。

MySQL パスワードはユーザー テーブルに保存されます。パスワードを変更すると、実際にはテーブル内のレコードが変更されます。

リセットの考え方は、パスワードなしでシステムに入る方法を見つけ、データベース コマンドを使用してユーザー テーブル内のパスワード レコードを変更することです。

確認したところ、インターネット上のMySQL5システムで推奨されている方法は、MySQLサービスを--skip-grant-tablesパラメータで起動することです。これは、起動時に認証テーブルがロードされないことを示し、起動が成功した後、ルートユーザーは空のパスワードでログインできます。

mysqld --skip-grant-tables

ログイン後、

UPDATE user SET authentication_string=” WHERE user='root';

これらのコマンドはパスワードを設定するか、空白のままにします。

ただし、mysql8 では、mysqld –skip-grant-tables などのコマンドラインが正常に起動できず、ini ファイルでパラメータを起動できません。

MySQL8 システムパスワードをリセットするための 2 つのアイデア

考え方は 2 つあります。サービス起動時に --init-file パラメータを使用して、パスワード変更用のコマンド ファイルを読み込んで実行します。コマンドを実行すると、サービス起動後にパスワードがクリアまたはリセットされます。サービス起動後は、空のパスワードまたは指定したパスワードでログインできます。

または、–skip-grant-tables コマンドライン パラメータでサービスを開始できない理由を引き続き調査し、問題を解決してから、サービスを開始し、空のパスワードでログインし、mysql.user テーブルのパスワード レコード フィールドをクリアまたはリセットするコマンドを手動で入力します。

前者をお勧めします。

具体的な操作手順は以下のとおりです。

方法1: --init-fileパラメータを使用して解決する

このパラメータは、サービスが起動したときに SQL コマンド ファイルが実行されることを指定します。したがって、パスワードをリセットするコマンドをファイルに記述し、このパラメータを使用して起動時にコマンドが実行されることを指定するだけで済みます。起動が完了したら、システム パスワードをリセットできます。

最初のステップはシステムサービスをシャットダウンすることです

ネットストップmysql

2番目のステップは、パスワード変更コマンドを含むテキストファイルを作成することです。

ALTER USER 'root'@'localhost' は '; によって識別されます。

ステップ3: コマンドラインモードでサーバーを起動し、起動時に実行されるパスワード変更コマンドファイルを指定します。

mysqld –init-file=d:mysqlc.txt –console

具体的な操作のスクリーンショット

方法2: --skip-grant-tablesパラメータを使用する方法を見つける

方法1と同様に、まずシステムサービスをオフにします

実際のテストでは、mysql8システムでは、mysqld –console –skip-grant-tables –shared-memoryを使用すると、パスワードなしでサービスを開始できます。

サービスが開始されたら、空のパスワードでシステムにログインします。

mysql.exe -u ルート

次にsqlコマンドを実行して、ルートユーザーのパスワードを空に設定します。

UPDATE mysql.user SET authentication_string=” WHERE user='root' and host='localhost';

具体的な操作のスクリーンショット

MySQL 8 の一部の機能により、古いリセット方法はあまり効果的ではありません。問題を解決するには、–init-file パラメータを使用することをお勧めします。これは安全で信頼性が高いことがテスト済みです。

データベース管理パスワードを紛失すると、本当に頭が痛くなります。パスワードを正常に取得できない場合は、大変なことになります。オンラインで見つかる解決策のほとんどは古くなっています。この記事を保存しておき、必要な場合に備えて注意を払うことをお勧めします。

以下もご興味があるかもしれません:
  • mysql8.0.19 でパスワードを忘れた場合の完璧な解決策
  • Windows 8.1 で MySQL5.7 のルート パスワードを忘れた場合の解決方法
  • MySQL 8のパスワードを忘れた場合のベストな対処法の簡単な分析
  • MySQL 8.0.18 圧縮パッケージのインストールと忘れたパスワードのリセット時に遭遇する落とし穴
  • mysql8.0 パスワードを忘れた場合の修正とネットコマンドのサービス名が無効になる問題
  • MySQL8のパスワードを忘れた場合の簡単な解決策

<<:  Linux でテキストを表示するためのヒント (非常に実用的!)

>>:  Vue の高度な構築プロパティの詳細な説明

推薦する

MySQLのトランザクション管理操作の詳細な説明

この記事では、MySQL のトランザクション管理操作について説明します。ご参考までに、詳細は以下の通...

子コンポーネントを通じて親コンポーネントのプロパティを変更するための Vue のさまざまな実装方法

目次序文一般的な方法1. 親コンポーネントを介して子コンポーネントの発行イベントをリッスンしてpro...

1 つの記事で React における Redux の初期の使用を理解する

Redux はデータ状態管理プラグインです。React や Vue を使用してコンポーネント化された...

MYSQL パフォーマンス アナライザー EXPLAIN 使用例分析

この記事では、例を使用して MYSQL パフォーマンス アナライザー EXPLAIN の使用方法を説...

LinuxシステムにISOファイルをインストールする方法

Linux システムで iso ファイルをインストールするにはどうすればいいですか?インストール手順...

mysql 8.0.19 win10 クイックインストールチュートリアル

このチュートリアルでは、参考までにMySQL 8.0.19のインストールチュートリアルを共有します。...

Reactを使用して画像認識アプリを実装する方法

まずは効果の写真をお見せしましょう。 個人的には効果は問題ないと思います。アプリが写真を学習する時間...

テーブル切り替えのための JavaScript プラグインのカプセル化

この記事では、テーブル切り替えプラグインを実装するためのJavaScriptのカプセル化コードを参考...

JavaScript で簡単な計算機を実装する

この記事の例では、参考までに簡単な計算機を実装するためのJavaScriptの具体的なコードを共有し...

レスポンシブWebデザイン学習(3) - モバイルデバイスでのWebページのパフォーマンスを向上させる方法

序文モバイル デバイスでは、帯域幅とプロセッサ速度の制限により、Web ページのパフォーマンスに対す...

フロントエンド開発における一般的なテクニックのまとめ

1. 記事タイトルリストの右側に日付を表​​示する方法:コードをコピーコードは次のとおりです。 &l...

W3C チュートリアル (13): W3C WSDL アクティビティ

Web サービスは、アプリケーション間の通信に関係します。 WSDL は、XML ベースの Web ...

CSSプロパティに基づいたボタンホバーボーダーと背景アニメーションのコレクション

ハートの属性不透明度: .999 は要素のスタッキングコンテキストを作成し、ボタン6と8のアニメーシ...

JavaScript を使用した Web 計算機の作成

この記事は主にJavaScriptを使用してWeb計算機を実現する効果を記録し、参考として掲載してい...

Mysql5.7 のグループ連結関数を使用するときにデータが切り捨てられる問題に対する完璧な解決策

一昨日、本番環境でGROUP_CONCAT関数を使用して選択したデータが切り捨てられ、最大長が102...