今日、WordPress がデータベースに接続できないことがわかりました。ウィンドウ サーバーにログインしたところ、すべてのサービスが正常に実行されていることがわかりました。 root アカウントを使用して MySQL データベースにログインすると、パスワードが一致しないというメッセージが表示されます。突然、サーバーがSQLインジェクション攻撃を受けたかもしれないことに気付きました... 事故の原因やその後の対策については、機会があればお話ししたいと思います。ここでは主に、mysql ユーザーのパスワードをリセットする手順について説明します。 ルート パスワードをリセットする ルート パスワードを忘れた場合は、mysql セーフ モードに入り、ルート パスワードをリセットできます。 1. MySQLサービスを停止する コマンド プロンプト ウィンドウを開き、net stop mysql と入力して MySQL サービスをシャットダウンします。 C:\Users\Administrator>net stop mysql57 MySQL57 サービスが停止しています。 MySQL57 サービスが正常に停止されました。 ↑ サービス名は必ずしもmysqlである必要はありません。たとえば、私の場合はmysql57で、57はバージョン番号5.7を表します。 もちろん、コンピュータの管理パネルから MySQL サービスをシャットダウンすることもできます。 2. binディレクトリに切り替える コマンド プロンプト ウィンドウで、cd コマンドを使用して、MySQL インストール ディレクトリの下の bin ディレクトリに切り替えます。 C:\ユーザー\管理者> cd C:\Program Files\MySQL\MySQL Server 5.7\bin C:\Program Files\MySQL\MySQL Server 5.7\bin> ↑ デフォルトのインストールディレクトリは C:\Program Files\MySQL\MySQL Server です 3. セーフモードに入る 権限チェックをスキップして mysql を起動するには、bin ディレクトリで my.ini ファイルを設定している場合は、それをインポートする必要があります: [mysqld] ベースディレクトリ = "C:\ProgramData\MySQL\MySQL Server 5.7" データディレクトリ = "C:\ProgramData\MySQL\MySQL Server 5.7\Data" ↑my.iniファイルでデータ保存パスを指定しました。設定ファイルを導入しないと、No such file or directory というエラーが出ます。 4. アカウントパスワードをリセットする 別のコマンド プロンプト ウィンドウを開き (セーフ モード ウィンドウを閉じないでください)、mysql\bin ディレクトリに切り替えて、mysql と入力し、権限の検証をスキップしてデータベースに接続します。 C:\Program Files\MySQL\MySQL Server 5.7\bin>mysql サーバーバージョン: 5.7.16 MySQL コミュニティサーバー (GPL) Copyright (c) 2000, 2016, Oracle およびその関連会社。無断複写・転載を禁じます。 ヘルプを表示するには、「help;」または「\h」と入力します。現在の入力ステートメントをクリアするには、「\c」と入力します。 マイSQL> ↑接続パラメータも指定できます。mysql -u <ユーザー名> -p <パスワード> -h <接続アドレス> -P <ポート番号> -D <データベース> update mysql.user set authentication_string="" where user="root"; を実行して、root ユーザーのパスワード (5.7 より前のパスワード フィールド) をリセットします。 mysql> mysql.user を更新し、authentication_string="" を設定します。user="root" です。 クエリは正常、1 行が影響を受けました (0.00 秒) mysql> mysql.user\G から user,authentication_string を選択します ************************** 1. 行 **************************** ユーザー: ルート 認証文字列: ************************** 2. 行 **************************** ユーザー:mysql.sys 認証文字列: *これはここで使用できる有効なパスワードではありません セット内の 2 行 (0.00 秒) ↑ ルートユーザーのauthentication_stringフィールドがクリアされました 5. 権限テーブルを更新する 権限テーブルを更新するには、flush privileges; コマンドを実行します。パスワードはリセットされました。終了するには quit と入力します。 mysql> 権限をフラッシュします。 クエリは正常、影響を受けた行は 0 行 (0.02 秒) mysql>終了 さよなら すべてのコマンド プロンプト ウィンドウを閉じ、タスク マネージャーを使用して mysqld.exe プロセスを終了します。 MySQL サービスを再起動すると、ルート アカウントに直接ログインできるようになります。 ルートパスワードを変更する セキュリティ上の理由から、ルート パスワードは空にしないでください。パスワードをリセットした後、新しいパスワードを設定する必要があります。 方法1: パスワードを設定する
root として mysql にログインし、set password コマンドを使用してパスワードを変更します。 mysql> root@localhost のパスワードを設定する = password("pswd"); クエリは正常、影響を受けた行は 0 行、警告は 1 件 (0.00 秒) 方法 2: mysqladmin 命名を実行すると、元のパスワードの入力を求められます。正しく入力した後、変更できます。 C:\Program Files\MySQL\MySQL Server 5.7\bin>mysqladmin -u root -p パスワード pswd パスワードを入力してください: **** mysqladmin: [警告] コマンドライン インターフェイスでパスワードを使用すると安全でない可能性があります。 警告: パスワードはプレーンテキストでサーバーに送信されるため、パスワードの安全性を確保するために SSL 接続を使用してください。 方法3: テーブルの更新
ルート パスワードをリセットするときに、デフォルトのパスワードを設定することもできます。ただし、パスワードはプレーンテキストにすることはできず、password() 関数を使用して暗号化する必要があります。 mysql> mysql.user を更新し、authentication_string=password("pswd") を設定します。user="root" です。 クエリは正常、1 行が影響を受け、1 つの警告 (0.00 秒) mysql> 権限をフラッシュします。 クエリは正常、影響を受けた行は 0 行 (0.01 秒) 要約する 上記は、Windows で MySQL のルート パスワードをリセットする方法に関するこの記事の内容のすべてです。皆様のお役に立てれば幸いです。興味のある方は引き続きこのサイトを参照してください: MySQLデータベース設計:Pythonを使ったスキーマ操作方法の詳しい解説 MySQL の instr を使用したファジー クエリ メソッドの紹介 MySQL での or ステートメントの使用例 不備がありましたら、メッセージを残してご指摘ください。このサイトをサポートしてくれた友人たちに感謝します! 以下もご興味があるかもしれません:
|
<<: Linux での sshd サービスとサービス管理コマンドの詳細な説明
>>: ネイティブ js で呼び出し、適用、バインドを実装する方法
序文プロジェクトのニーズに応じて、Vue-touch を使用して、vue モバイル端末の左スワイプ編...
序文:今日、「<!DOCTYPE> タグを注意深く理解しましたか?」と尋ねられました。私...
会社のビジネス要件により、次の図の赤い領域の効果を達成する必要があります。 効果の説明: 1. 赤い...
概要ボリュームは、さまざまなストレージ リソースを抽象化および仮想化したものです。ストレージ リソー...
目次序文積極的な撤退例外、拒否、および発行されたエラー信号まとめ序文NodeJS プロセスが終了する...
私は今日、mybatis を学び、データベースに対していくつかの簡単な追加、削除、変更、クエリを実行...
最近、サーバーのストレステストを再度行う必要が出てきました。ここでは、最近学んだ見積もりスキームと見...
この記事では、Web ページを作成する前に確認すべき、いわゆる仕様をいくつかまとめました。皆様のお役...
目次フックとは何ですか?クラスコンポーネント機能コンポーネントフックが作られた理由要約するフックとは...
序文実際、Linux では、控えめな「!」が驚くほど多くの用途で使用されています。この記事では、「!...
親コンテナの幅は固定されています。子要素が親の幅を均等に分割するには、どのような方法がありますか?コ...
前回の記事で、MySQL ステートメントの最適化には限界があると述べました。MySQL ステートメン...
1. Logrotateツールの紹介Logrotate はログファイル管理ツールです。Linux に...
MySQL では通常、limit を使用してページ上のページング機能を完了しますが、データ量が大きな...
目次プロキシ転送ルール最初のもの: 2番目のタイプ: 3番目のタイプ: 4番目のタイプ: 5番目:プ...