MySQL自带客户端直接免密登录操作
如我们所熟悉的MySQL
服务有很多优秀的界面型客户端工具,可以非常方便我们轻松地操作数据库。但是在某些情况下,比如在服务器终端操作时,我们只能通过MySQL
提供的命令行操作,其中少不了的便是要输入用户和密码信息。而现在的安全要求对密码的策略也较为严格,导致我们设置的密码不仅长度长,而且还会比较复杂等,如果是要经常进行数据库访问操作的DBA或分析师来说,这无疑是个不好的交互体验。
其实在Linux操作系统中也提供有一个功能,就是类似于那些界面型的MySQL
客户端来一样,可以记住数数据库的用户密码信息,而且操作也是比较简单。只需要当前的用户的根目录下,创建一个名为 .my.cnf
的配置文件,并添加如下配置即可:
|
|
重点注意: 参考上面的配置可发现密码是用 单引号 括起来的,这是因为密码中可能会包含一些特殊字符,比如
#
、$
等,如果不加单引号登录时会出现密码错误的情况,建议默认给所有密码都加上 单引号。此时可以直接在Linux服务器的终端中敲入 mysql
命令来登录到数据库中,无需再输入用户名和密码信息。
要是有多个数据库的连接信息想要配置,可以继续在该文件中添加新的section
配置。为了方便识别和管理,可以给section
起一个有意义的名字,比如说用需要访问的数据库名称来做名称,参考如下示例配置:
|
|
然后还需要创建个别名方便记忆和操作,需要当前用户下的.bashrc
名称添加个新的alias
配置,可以直接用下面一条命令来完成添加操作,请参考示例操作:
|
|
此时就可以直接在Linux服务器的终端中使用sys
数据库名称伪命令登录到该数据库,然后开始其他所需要的操作。
通过上述的一顿配置操作下来,便能在Linux服务器中通过默认的用户密码来登录到数据库进行操作,是不是很方便呢!😄
警示:
- 建议将
.my.cnf
配置文件的权限设置为600,不然登录时会出现权限拒绝的问题; - 配置文件中所配置的密码信息,需要做好相关的安全保护措施,避免被他人恶意获取。