はじめに
本番環境でmysqlのパスワードを変更しようとしたらいつの間にかローカルのパスワードも変わってしまった!ということがあったので備忘録として。
ローカルではパスワードを設定したくないので、今回は空で設定しています。
①ターミナルでmysqlの起動を停止させる
ホームディレクトリで構いません。
$ mysql.server stop
Shutting down MySQL
. SUCCESS!
②mysqlをセーフモードで起動
$ sudo mysqld_safe --skip-grant-tables --skip-networking
③起動したターミナルをそのままにし、⌘+tなどでもう一つターミナルのタブを開く
④③で新しく開いたタブにてmysqlにログイン
$ mysql -u root
セーフモードで立ち上げているため、本来であれば上記のコマンドでパスワードが必要なく入れるはずなのですがなぜか自分のPCでは入れませんでした・・。
できない人は下のコマンドにてパスワードを入力してログインしましょう。
$ mysql -u root -p
⑤パスワードの変更
mysql> update user set authentication_string=password("パスワード") where user='root';
mysql> FLUSH PRIVILEGES;
mysql> exit
自分の場合、今回はパスワードは設定したくなかったため、新しいパスワードというところは下記のようにしました。
authentication_string=password("")
⑥mysqlの再起動
$ mysql.server restart
以上でパスワードが変わっているはずです。
【参考記事】
・MySQLのrootユーザーのパスワードを変更
http://ktykwsk.com/mysql%E3%81%AEroot%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%81%AE%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89%E3%82%92%E5%A4%89%E6%9B%B4/
・MySQL 5.7.6でroot用パスワードが変わらなくて困った話
https://qiita.com/gatchan0807/items/7323a5d2dd365308cb94