MySQL にログインする際のオプション -p について

環境

  • CentOS7
  • MySQL8.x


--password[=password], -p[password]

" サーバーに接続する際に使用するパスワードです。短いオプション形式 (-p) を使用した場合は、オプションとパスワードの間にスペースを置くことはできません。コマンド行で、--password オプションまたは -p オプションに続けて password の値を指定しなかった場合、mysql はそれを要求します。

コマンド行でのパスワード指定は、セキュアでないと考えるべきです。セクション6.1.2.1「パスワードセキュリティーのためのエンドユーザーガイドライン」を参照してください。オプションファイルを使用すれば、コマンド行でパスワードを指定することを回避できます。 "

とのこと。

# ユーザーが root でパスワードが sample の場合
$ mysql -u root -psample

# パスワード入力を求める時
## --password の場合はパスワードをコマンドラインに含めれない
$ mysql -u root -p
$ mysql -u root --password

# ダメな例
$ mysql -u root -p sample
$ mysql -u root --passwordsample
$ mysql -u root --password sample