msksgm’s blog

msksgm’s blog

Webエンジニアです.日々の勉強,読書,映画観賞,美術観賞の記録を載せます.

MySQLにCLIでパスワードを入力する方法

概要

MySQL のオプションコマンドには以下のようなものがあります。

-u ユーザ名指定

-p パスワード指定

-D データベース名指定

-h ホスト名の値を指定

-e コマンドラインから直接 sql を実行

DB サーバーのヘルスチェックのために以下のコマンドを使おうと考えました。 CLI でパスワードを直書きするのは問題がありますが、開発環境なのと、環境変数のためセーフと想定しています。 もちろん、本番 DB を対象に使うときには NG。

しかし、以下のようにパスワードが求められてしまいます。。。

$ mysql -u root --port 3306 -h 127.0.0.1 -D phpunit_intro -p password -e 'SHOW tables;'
Enter password:

解決策

CLImysql のコマンドを入力するときには、スペースが不要でした。

mysql: [Warning] Using a password on the command line interface can be insecure.のように、CLI でパスワードを入力すると安全じゃないよって教えてくれます。

$ mysql -u root --port 3306 -h 127.0.0.1 -D phpunit_intro -ppassword -e 'SHOW tables;'
mysql: [Warning] Using a password on the command line interface can be insecure.

参考

qiita.com