end0tknr's kipple - 新web写経開発

http://d.hatena.ne.jp/end0tknr/ から移転しました

mysql8で、rootパスワードの再設定

http://www-creators.com/archives/5574

以下に記載していますが、内容は上記urlの通り、手元の環境にあるmysql8は、 /etc/my.cnf に skip-grant-tables を追記することで、 mysqlへのrootログインをパスワードなしに設定していた為、再確認。

STEP1 - mysqlへのパスワードなしログイン設定

my.cnf の [mysqld] 領域に skip-grant-tables を追記することで "$ /usr/local/mysql/bin/mysq -u root"のようにパスワードなしで ログインできるようにします。

$ sudo vi /etc/my.cnf
   [mysqld]
   skip-grant-tables

$ sudo systemctl restart mysqld.service

STEP2 - mysqlのrootパスワードをnull化

$ /usr/local/mysql/bin/mysql -u root
mysql> use mysql;
mysql> UPDATE user SET authentication_string=null WHERE user='root';
mysql> flush privileges;
mysql> quit;

$ sudo systemctl restart mysqld.service

STEP3 - mysqlへのパスワードなしログイン設定を解除

$ sudo vi /etc/my.cnf
   [mysqld]
   # skip-grant-tables

$ sudo systemctl restart mysqld.service

STEP4 - mysqlのrootパスワードを再?設定

$ /usr/local/mysql/bin/mysql -u root
mysql> use mysql;
mysql> ALTER USER 'root'@'localhost' identified BY 'ないしょ';