我一直在寻找unix bash历史记录来为mysql密码提供 * 。 例如:如果我发出 - mysql -uroot -psecuritydemon -h192.168.90.888
然后在unix提示符中,如果我使用历史记录| grep -i mysql - >我也得到了密码输入..相反,我希望看到历史grep结果如下
mysql -uroot -p * * * -h192.168.90.888
有任何方法可以达到这个目的吗?
答案 0 :(得分:1)
我认为不可能在bash中过滤写入历史记录的命令。但是,我建议您使用~/.my.cnf
配置文件,如下所述:http://support.modwest.com/content/6/242/en/how-do-i-create-a-mycnf-mysql-preference-file.html
。并确保将权限设置为go-rwx
,以便其他任何人都无法读取您的文件。
答案 1 :(得分:0)
你的bash历史不是最大的(或者至少不是唯一的)问题:如果你以这种方式运行sql,任何人都可以在你的会话开放时用简单的ps ax
看到你的密码!相反,在没有密码的情况下使用mysql -uroot -p
:然后mysql客户端将显示一个密码提示,任何人都无法嗅探(除非他们站在你的肩上,或者你的计算机上有root,或者同样不可避免的东西)。