このmysql -e "{command}"機能を使用するBASHツールがいくつかあります。これらのツールを使用するたびにパスワードを入力するのは手間がかかるため、パスワードがコードとともにプレーンテキストファイルに書き込まれないように、メモリに(を使用してread -s)保存し、コマンドを実行するたびにBASHに読み取らせます。
Mysqlは、パスワードがコマンドライン経由で送信されていると判断し(言い方をすれば)、「コマンドラインインターフェイスでのパスワードの使用は安全ではない可能性があります」というエラーを表示します。
私の目的のために、このメッセージを抑制する必要はありません。私が知る必要があるのは、それが安全でない可能性があることです。パスワードは物理的に表示されることはないため、ショルダーサーフィンではできません。また、SSHパスワードを推測した人でも、スクリプト自体ではなくメモリに保存されているため、パスワードを実行できません。中間者攻撃などが可能ですか?
bashコマンドを実行すると、どのように読みますか?そうすればmysql -p"$pass"、誰でもそれを見ることができますps。
                
~/.my.cnf例行うことによって、あなたはホストごとに指定することができます[client<hostname>]たとえば[clientlocalhost]、それが簡単かつ安全であるように、自動的にそれを使用しますMySQLのツールを