MySQL 8 (MariaDB 10)のrootパスワード変更方法

スポンサーリンク
スポンサーリンク

サーバーをたくさん管理してたり、メモしてなかった場合等、ついついrootパスワードを忘れてしまうことがあったりするかと思いますので、そのような場合の変更方法を書いていきたいと思います。
※流れとしては、パスワードなしでログインし、その際にパスワードを変更するという流れになります。


パスワード入力なしでログインできる設定を追記

まずは、パスワードなしでログインできるように設定ファイル(my.cnf)に「skip-grant-tables」を追記します。


$ sudo vim /etc/my.cnf

[mysqld]
skip-grant-tables ⇦追記します

追記したら再起動します。


$ sudo systemctl restart mysqld.service

これで、全てのユーザーでパスワードなしでログインできるようになります。

パスワードの再設定

パスワード指定なしで、rootユーザーでログインします。


$ mysql -u root

ログインできたら、以下のコマンドを実行し、パスワードの再設定を行います。


> ALTER USER 'root'@'localhost' IDENTIFIED BY '設定するパスワード';

設定を反映させます。


> FLUSH PRIVILEGES;

パスワードの変更はここで完了です。

設定を戻します

パスワードなしでログインできる設定(skip-grant-tables)を戻します。
※そのままにしておくとセキュリティ的に危険なので、絶対忘れないようにしましょう。


$ sudo vim /etc/my.cnf

[mysqld]
skip-grant-tables ⇦削除します

修正したら再起動します。


$ sudo systemctl restart mysqld.service

ログイン確認

パスワードの変更が完了しましたので、最後に問題なくログインできるか確認します。
以下のコマンドを実行し、設定したパスワードを入力し、ログインできることを確認します。


$ mysql -u root -p

これで完了です。

パスワードをスキップできる状態にしたままにしておくと危険ですので、設定を戻す作業は忘れないように気をつけてください(^^;

コメント

タイトルとURLをコピーしました