在Linux上配置不用密码登录mysql

在MySQL服务器上登录的时候我原来使用的方案是配置用户名和密码在~/.my.cnf文件中,因为这个文件里面的信息都是明文的,不是很安全。今天看到一个更好的方案,就是用.mylogin.cnf文件。mysql有一个配置工具mysql_config_editor可以维护.mylog…

在MySQL服务器上登录的时候我原来使用的方案是配置用户名和密码在~/.my.cnf文件中,因为这个文件里面的信息都是明文的,不是很安全。今天看到一个更好的方案,就是用.mylogin.cnf文件。mysql有一个配置工具mysql_config_editor可以维护.mylogin.cnf文件,而且保存在这个文件中的信息是加密的。

添加配置

指定login-path来登录mysql

显示login-path

因为.mylogin.cnf文件是加密的,为了显示已经配置的信息,可以使用如下的命令来查看现有的配置。

参考文档

4.2.2.3 Command-Line Options that Affect Option-File Handling
4.6.6 mysql_config_editor — MySQL Configuration Utility


旧方案

在Mysql服务器上,每次登录都需要输密码,有时候会比较麻烦,特别是密码是复杂密码的时候,为了方便可以配置一个 ~/.my.cnf 文件,这样就不需要每次都输入密码了。当然这也需要保证自己的服务器配置是安全的,不然如果被攻击的时候,密码也就暴露了。

~/.my.cnf 例子如下:

更详细的文档请参考官方文档:4.2.2.2 Using Option Files

因为一个cnf文件可以配置一个用户,如果需要切换不同用户登录,可以配置多个文件,然后运行mysql命令的时候指定用哪个文件来登录。示例如下: