2012年10月26日金曜日

MySQL5.6 .mylogin.cnfで遊んでみる

What's newの頭に書かれているのに誰もやってなさそうなので遊んでみる。

遊んでみるとは言っても、$HOME/.my.cnfにuser=/password=で書くのとやってることは変わらない。
今まで平文で書くのが嫌で特にやってなかったけど、これならやっても良いかなーという風情。

http://dev.mysql.com/doc/refman/5.6/en/mysql-config-editor.html


mysql_config_editor set --user=tpcc --password
Enter password: <パスワード手入力>


$ mysql_config_editor print --all
[client]
user = tpcc
password = *****


とまあこの通り記録される。
何も指定しないとclientセクションに記録されるけれど、セクションを指定することも出来る。



$ mysql_config_editor set --login-path=mysqldump --user=root --password
Enter password: <パスワード手入力>

mysql_config_editor print --all
[client]
user = tpcc
password = *****
[mysqldump]
user = root
password = *****


追加された。
これで-uや-pなしでmysqldumpの時はrootアカウント、
mysqlクライアントやmysqlcheckとかの時はtpccアカウントでログインできる。

予めDBAがこれ作って読み取りだけして配布しておけば、
ユーザーにパスワードを知らせずにそのアカウントでログインした時だけroot使える、とかできる。
これを作っておけば、馬鹿みたいに長いパスワードを作っても怒られなくて済む。。はず。。

DBIにmy.cnfを読み込ませられる様に.mylogin.cnfも読み込ませられる様になれば、
アプリの側にアカウントパスワード情報を平書きしなくても良くなるはず。。

対応してるインターフェイスの情報が見当たらないなぁ。。

0 件のコメント :

コメントを投稿