DBUSER変数にユーザ名、DBPASSWORD変数にパスワード、DBNAME変数に接続先DB名を記述する前提です。以下の方法で、ファイルを設置しなくても1行でなんとかすることができます。
mysql --defaults-file=<( printf '[client]\npassword=%s\n' ${DBPASSWORD} ) \ -u ${DBUSER} ${DBNAME}このとき、プロセスツリーは以下のようになります。
mysql --defaults-file=/dev/fd/63 -u ユーザ名 DB名ぜひお試しください。
MySQLのコマンドラインで-pオプションを使わずにパスワードを指定する方法 - インフラエンジニアway
バッチ処理でパスワード付きのMySQLにデータ入れたいけど、プロセスリストにパスワードを晒したくない。どうしようって時に使えますね。
2年前 | 固定リンク | 2010年 3月 2日 | 
