MySQL :: MySQL 5.6 リファレンスマニュアル :: 6.1.2.1 パスワードセキュリティーのためのエンドユーザーガイドライン
ここの通りなんだけど。
コマンドラインで指定
簡単だけど、セキュアじゃないですね。コマンドラインヒストリーに残る場合もあるし。
-p
の後にスペースを入れないのがポイント
mysql -u USER -pPASSWORD
プロンプトで入力
一般的な方法ですね。
mysql -u USER -p
設定ファイルから読み取る
~/.my.cnf
を作っておくとそこから設定を読み取ってくれます。パスワード情報は他のユーザから読み取られないようにパーミッションを気を付けておくと良いでしょう。
(でも平文のパスワードをファイルで保存するのは良い手ではないです。
cat > ~/.my.cnf <<... [client] user=USER password=PASSWORD ... chmod 600 .my.cnf mysql
環境変数から読み取る
この方法はpsコマンドでパスワードが他のユーザから見られてしまう可能性があるので基本的には使ってはいけません。
MYSQL_PWD=PASSWORD mysql -u USER