我必须通过 mysql cli 登录到不同主机上的多个 MYSQL DB。是否可以保存这些登录信息,这样我就不必追踪/记住凭据?
答案1
根据讨论http://bugs.mysql.com/bug.php?id=17627我使用下面的方法自动登录不同的mysql服务器:
文件 /path/to/my-host1-cnf.txt
[client]
host="hostname1"
user="username1"
password="password1"
database="database1"
文件 /path/to/my-host2-cnf.txt
[client]
host="hostname2"
user="username2"
password="password2"
database="database2"
使用上面保存的凭据连接到 host1、database1:
mysql --defaults-file="/path/to/my-host1-cnf.txt"
使用上面保存的凭据连接到 host2、database2:
mysql --defaults-file="/path/to/my-host2-cnf.txt"
希望这可以帮助 :-)
答案2
你随时可以为其创建别名
alias db1='mysql -uUsername1 -pPasswordSecure1 -hHosname1 DatabaseName1'
alias db2='mysql -uUsername2 -pPasswordSecure2 -hHosname2 DatabaseName2'
ETC..
并把它们放进你的
.bash_别名
.barsh_配置文件
或者
.bash_rc
但这并不能解决安全问题!即使你对 bash 文件赋予了“良好”权限,也并不意味着它不是纯文本 :(