mysqlサーバーに接続するために次のコマンドを実行しています(自動的に接続されるbashスクリプトの一部です)
mysql -h slave1 -u monitor -pvP!KnK4*
端末ウィンドウに次の応答が表示されます。
-bash: !KnK4: event not found
mysql -h slave1 -u monitor -p
コマンドラインにパスを追加せずに実行し、メッセージが表示されたときに同じパスワードを使用するとうまく機能します。
この状況で私が何を間違っているのでしょうか?
PS:上記のパスワードは実際のパスワードではありません(長くスタック交換のために短縮されました)。
答え1
!
シェル固有*
の文字(例:移動する。
代わりに:
$ mysql -h slave1 -u monitor -pvP!KnK4*
代わりに、以下を使用してください。
$ mysql -h slave1 -u monitor -p'vP!KnK4*'
では時間が経つと、実際のパスワードの場合は、MySQLユーザーのパスワードを変更してください。誰もが見ることができるようにインターネットに投稿したからです。
(また、ユーザーのシェル記録ファイルを読むことができる人は誰でもこのパスワードにアクセスできることを覚えておく必要があります。)