アンドロイド

mysql rootパスワードをリセットする方法

目次:

Anonim

MySQLルートパスワードを忘れましたか? 心配しないで、それは私たち全員に起こります。

このチュートリアルでは、MySQLルートパスワードを忘れた場合にリセットする方法を示します。 このガイドは、Ubuntu 18.04やCentOS 7などの最新のLinuxディストリビューションで動作するはずです。

前提条件

以下の手順を続行する前に、sudo特権を持つユーザーとしてサーバーにログインしていることを確認してください。

サーバーのバージョンを特定する

システムで実行しているMySQLまたはMariaDBサーバーのバージョンに応じて、ルートパスワードを回復するために異なるコマンドを使用する必要があります。

次のコマンドを発行して、サーバーのバージョンを確認できます。

mysql --version

mysql Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using EditLine wrapper

または、MariaDBに対して次のように出力します。

mysql Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

実行しているMySQLまたはMariaDBのバージョンを必ずメモしてください。

MySQLまたはMariaDBルートパスワードをリセットする方法

次の手順に従って、MySQL / MariaDBルートパスワードをリセットします。

1. MySQL / MariaDBサービスを停止します

ルートパスワードを変更するには、最初にMySQLサーバーを停止する必要があります。 これを行うには、次のコマンドを入力します。

sudo systemctl stop mysql

2.グラントテーブルをロードせずにMySQL / MariaDBサーバーを起動します

--skip-grant-tables オプションを有効にすると、誰でもパスワードなしですべての権限を使用してデータベースサーバーに接続できます。

グラントテーブルを読み込まずにデータベースサーバーを起動するには、次のように入力します。

sudo mysqld_safe --skip-grant-tables &

上記のコマンドの最後にあるアンパサンド & は、プログラムをバックグラウンドで実行するため、シェルを引き続き使用できます。

3. MySQLシェルにログインします

これで、パスワードを要求されることなく、rootユーザーとしてデータベースサーバーに接続できます。

mysql -u root

4.新しいルートパスワードを設定する

  • MySQL 5.7.6以降またはMariaDB 10.1.20以降を使用している場合は、次のコマンドを実行します。

    ALTER USER 'root'@'localhost' IDENTIFIED BY 'MY_NEW_PASSWORD'; FLUSH PRIVILEGES;

    ALTER USER ステートメントが機能しない場合は、ユーザーテーブルを直接変更してみてください。

    UPDATE mysql.user SET authentication_string = PASSWORD('MY_NEW_PASSWORD') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;

    MySQL 5.7.5以前またはMariaDB 10.1.20以前を使用している場合は、次のコマンドを実行します。

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MY_NEW_PASSWORD'); FLUSH PRIVILEGES;

どちらの場合でも、すべてがうまくいけば、次の出力が表示されるはずです。

Query OK, 0 rows affected (0.00 sec)

5.データベースサーバーを正常に停止および起動する

ルートパスワードが設定されたので、データベースサーバーを停止して通常どおりに起動する必要があります。

次のコマンドを使用して、データベースサーバーを停止します。

mysqladmin -u root -p shutdown

新しいルートパスワードの入力を求められます。

データベースサーバーを通常どおり起動します。

  • MySQLの場合、次を入力します。

    sudo systemctl start mysql

    MariaDBの場合、次を入力します。

    sudo systemctl start mariadb

6.パスワードを確認します

新しいルートパスワードが正しく適用されたことを確認するには、次のように入力します。

mysql -u root -p

新しいルートパスワードの入力を求められます。 入力すると、データベースサーバーにログインする必要があります。

結論

このチュートリアルでは、MySQLまたはMariaDBルートパスワードをリセットする方法を学びました。 新しいルートパスワードが強力で安全であることを確認し、安全な場所に保管してください。

ご質問がある場合は、コメントをお気軽にお寄せください。

mysql mariadb