この記事では、MySQLのルートパスワードをリセットする方法について説明します。たとえば、パスワードを忘れた場合は、これを行う必要があります。
MySQLのルートパスワードをリセットするには、サーバーへのルートアクセス権が必要です。MySQLルートパスワードの変更
MySQLのrootパスワードをリセットするには、次の手順に従います。
- SSHを使用してアカウントにログインします。rootユーザーとして次の手順のコマンドを実行する必要があります。したがって、rootユーザーとして直接ログインするか(セキュリティ上の理由からお勧めしません)、 suを使用することができます。 またはsudo rootユーザーとしてコマンドを実行するためのコマンド。
- Linuxディストリビューションに適切なコマンドを使用してMySQLサーバーを停止します:
- CentOSおよびFedoraの場合は、次のように入力します。
service mysqld stop
-
DebianおよびUbuntuの場合、次のように入力します。
service mysql stop
- CentOSおよびFedoraの場合は、次のように入力します。
-
—skip-grant-tablesを使用してMySQLサーバーを再起動します オプション。これを行うには、次のコマンドを入力します。
mysqld_safe --skip-grant-tables &
- コマンドの最後にアンパサンド(&)を入力してください。これにより、コマンドがバックグラウンドで実行され、次の手順でコマンドを入力できるようになります。
- —skip-grant-tablesを使用してMySQLを実行する 有効にしたオプションは非常に安全ではないため、パスワードをリセットしている間だけ実行する必要があります。以下の手順は、ルートパスワードをリセットした後、mysqld_safeサーバーインスタンスを安全に停止し、MySQLサーバーを安全に起動する方法を示しています。
-
次のコマンドを使用してMySQLにログインします。
mysql
-
mysql>で プロンプトが表示されたら、パスワードをリセットします。これを行うには、次のコマンドを入力し、new-passwordを新しいrootパスワードに置き換えます。
UPDATE mysql.user SET Password=PASSWORD('new-password') WHERE User='root';
-
mysql>で プロンプトで、次のコマンドを入力します。
FLUSH PRIVILEGES; exit;
-
次のコマンドを使用してMySQLサーバーを停止します。 MySQLサーバーがシャットダウンする前に、新しいMySQLルートパスワードを入力するように求められます。
mysqladmin -u root -p shutdown
-
MySQLサーバーを正常に起動します。これを行うには、Linuxディストリビューションに適切なコマンドを入力します。
- CentOSおよびFedoraの場合は、次のように入力します。
service mysqld start
-
DebianおよびUbuntuの場合、次のように入力します。
service mysql start
- CentOSおよびFedoraの場合は、次のように入力します。