Eu tenho algumas ferramentas BASH que usam a mysql -e "{command}"função. Inserir a senha toda vez que uso essas ferramentas seria uma dor, portanto, para evitar que a senha seja escrita em um arquivo de texto sem formatação com o código, eu a armazeno na memória (usando read -s) e o BASH a lê sempre que executa os comandos.
O Mysql ainda pensa que a senha está sendo enviada através da linha de comando (porque, de certa forma, é) e ainda me dá o erro "Usar uma senha na interface da linha de comando pode ser inseguro".
Para meus propósitos, não preciso suprimir esta mensagem. O que eu preciso saber é: o que poderia torná-lo inseguro? A senha nunca é fisicamente visível; portanto, a navegação no ombro não poderia fazê-lo, e mesmo alguém que adivinhou minha senha SSH não seria capaz de fazê-lo, pois ela é armazenada na memória e não nos próprios scripts. É possível um ataque man-in-the-middle ou algo semelhante?
bashleu quando você executa o comando? Se você o fizer mysql -p"$pass", qualquer um poderá vê-lo ps.
~/.my.cnfExemplo Você pode especificar por host, fazendo[client<hostname>]por exemplo,[clientlocalhost]MySQL ferramentas irá usá-lo automaticamente assim que é mais fácil e seguro