「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > MySQL で root ユーザーの制御を取り戻す

MySQL で root ユーザーの制御を取り戻す

2024 年 8 月 26 日に公開
ブラウズ:780

Retake control of the root user in MySQL

MySQL を初めてインストールしたときは、パスワードなしではログインできません。
パスワードなしでログインするには、my.cnf に次の行を追加する必要があります。

skip-grant-tables

セキュリティ上の大きなリスクがあるため、外部からの不正なアクセスを防ぐためにパスワードを設定する必要があります。

MySQL で root ユーザーの制御を取り戻す方法

ステップ 1: MySQL に接続する

mysql

ステップ 2: メイン データベースの使用

use mysql;

ステップ 3: ユーザーの root パスワードを再定義します

UPDATE user SET `authentication_string` = PASSWORD('myNuevoPassword') WHERE `User` = 'root';

注意
コマンドを実行できない場合は、mysql.user テーブルの [authentication_string] カラムを確認してください。

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
W&2-*D:1FsLlMJEFsvaZNpaAlnJDEyTNo2QO7Eu7P0rhe10psBsC
4 rows in set (0.00 sec)

そして次のコマンドを実行します。

UPDATE user SET `authentication_string` = 'myNuevoPassword' WHERE `User` = 'root';

ステップ 4: root パスワードを変更できる場合は mysql.user テーブルを表示します

SELECT User, authentication_string  FROM mysql.user\G
*************************** 1. row ***************************
                 User: mysql.infoschema
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 2. row ***************************
                 User: mysql.session
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 3. row ***************************
                 User: mysql.sys
authentication_string: $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED
*************************** 4. row ***************************
                 User: root
authentication_string: ZAQ$2wsx2408
4 rows in set (0.00 sec)

ステップ5: my.cnfから行を削除

skip-grant-tables

ステップ 6: MySQL サービスを再起動します

sudo systemctl restart mysqld

ステップ 7: パスワードを使用して mysql に接続します

mysql -u root -p
Enter password: [new password]

mysql> 

このアクションを実行する必要がある場合は、慎重に使用してください。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/kyotanakada/retake-control-of-the-root-user-in-mysql-308h?1 侵害がある場合は、[email protected] に連絡して削除してください。それ
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3