システム開発・構築の神様

新しいサービスや技術を使った開発や構築。その他不具合解決など

MySQLの警告対応 mysqldump: [Warning] Using a password on the command line interface can be insecure.

Crontabを使って1日1回Mysqlデータベースをバックアップしているのですが、ご丁寧にCrontab実行時に警告メールが届くようになりました。

 

警告の内容は

mysqldump: [Warning] Using a password on the command line interface can be insecure.

です。

 

なるほど、今までも直接コマンドを実行すると表示されていたので・・・、-pでパスワードを指定すると警告になる仕様変更の存在はしっていました。

 

もちろん、その仕様はCrontabでも同じです。

 

いままで気づかなかったのは、rootのパスワードを自分のメールアドレスにしていなかっただけで、誰かのところにはログメールが届いていたんだと思います。。。

 

無視・・・

 

とりあえず毎日警告メールが届いても嫌なので、回避することにしました。

 

いろいろ調べた限りでは、環境変数を使うのが一番簡単そうだと分かりました。セキュリティー上は、ほとんど変わりませんが・・・環境変数に入れるだけ、さらにセキュリティーは悪くなる?

 

まあ、自前の開発サーバーなので、その辺はあまあま設定ということで・・・

 

#!/bin/sh

MYSQL_PWD="password"
MYSQL_PWD=${MYSQL_PWD} mysqldump -u {USERNAME} {DATABASE} | bzip2 > {FILENAME}.bz2

 

回避方法はこんな感じでOKでした。

問題なくバックアップできたので良かったです。