オプションの説明を読んでもいまいちピンと来なかった。
どうやらpassword_expiredが'Y'になっている(rpmとかでインストールした時はこうなる)と、
非対話モードでのログインができないらしい。
とりあえずためす。
mysql56> grant all on *.* to test; Query OK, 0 rows affected (0.05 sec) mysql56> alter user test password expire; Query OK, 0 rows affected (0.00 sec) $ mysql -utest -e "select current_user()" ERROR 1862 (HY000): Your password has expired. To log in you must change it using a client that supports expired passwords. # mysql -utest --connect-expired-password -e "select current_user()" ERROR 1820 (HY000) at line 1: You must SET PASSWORD before executing this statement
おおー、ホントだー。
これがあるからmysql_secure_installation
(Perl、内部でsystem("mysql .. < $command");って呼び方をしてる)
が動かなくて、今回動くようになったっていうBug Fixなのか。。
にしても、mysql_secure_installation使ってる人いるのかな?
個人的には手間がなくて便利なんだけれども、gtid-mode=ONにしてると怒られるから
(MyISAMなmysql.userテーブルを直接叩くので、gitd-mode=ONだとunsafeって言われて転ける)
使わなくなっちゃった感じです。5.5までは常用してた。
0 件のコメント :
コメントを投稿