MySQL实现免密登录的三种配置方式

 更新时间:2024年03月28日 11:12:43   作者:恒悦sunsite  
我们登录MySQL的时候有时候会忘记root密码,这时我们需要免密登录,所以这篇文章给大家介绍了MySQL免密登录的三种方式,文章通过是示例代码给出了详细的配置方案,需要的朋友可以参考下

一、示例环境版本说明

操作系统版本centos7.6

[wuhs@test1 mysql]$ cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

mysql数据库版本5.7.32

[wuhs@test1 mysql]$ mysql -V
mysql Ver 14.14 Distrib 5.7.32, for el7 (x86_64) using EditLine wrapper

二、MySQL免密登录方式配置示例

1、通过设置client标签,直接编辑/etc/my.cnf文件

编辑/etc/my.cnf文件,添加如下代码

[wuhs@test1 mysql]$ cat /etc/my.cnf
[client]
user = root
password = 123456
port = 3306

配置完成后可以使用mysql命令直接登录数据库

[wuhs@test1 mysql]$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.32-log MySQL Community Server (GPL)
<br>
Copyright © 2000, 2020, Oracle and/or its affiliates. All rights reserved.
<br>
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
<br>
Type ‘help;' or ‘\h' for help. Type ‘\c' to clear the current input statement.
<br>
mysql>

此方式最大问题是明文存储密码,见配置文件各用户可见,非常的不安全。

2、我们通过my.cnf来配置,设置到~/.my.cnf来配置免密码

编辑~/.my.cnf文件,添加如下代码

[wuhs@test1 mysql]$ cat ~/.my.cnf
[client]
user = root
password = 123456
port = 3306

修改my.cnf属性

#chmod 600 ~/.my.cnf
[wuhs@test1 mysql]$ ll ~/.my.cnf
-rw-------. 1 wuhs wuhs 51 Dec 29 22:56 /home/wuhs/.my.cnf

配置完成后可以使用mysql命令直接登录数据库

[wuhs@test1 mysql]$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.7.32-log MySQL Community Server (GPL)
<br>
Copyright © 2000, 2020, Oracle and/or its affiliates. All rights reserved.
<br>
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
<br>
Type ‘help;' or ‘\h' for help. Type ‘\c' to clear the current input statement.
<br>
mysql>

此种方式也是明文存储,配置方式同第一种,文件为隐藏文件,设置文件为改用户可读,与第一种方式相比安全性有所提高。经验证测试,~/.my.cnf配置文件优先于/etc/my.cnf。

3、通过mysql_config_editor命令

使用mysql_config_editor命令一个test标签

[wuhs@test1 mysql]$ mysql_config_editor set -G test -S /tmp/mysql.sock -uroot -p
Enter password: [此处输入root账户密码]

执行如上步骤后生成了隐藏文件.mylogin.cnf,文件类型为data,是一个二进制文件

[wuhs@test1 mysql]$ file ~/.mylogin.cnf
/home/wuhs/.mylogin.cnf: data

查看该文件,密码为加密存储

[wuhs@test1 mysql]$ mysql_config_editor print --all
[test]
user = root
password = *****
socket = /tmp/mysql.sock

使用mysql --login-path="标签"登录

[wuhs@test1 mysql]$ mysql --login-path=test
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.7.32-log MySQL Community Server (GPL)
<br>
Copyright © 2000, 2020, Oracle and/or its affiliates. All rights reserved.
<br>
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
<br>
Type ‘help;' or ‘\h' for help. Type ‘\c' to clear the current input statement.
<br>
mysql>

第三种方式登录文件为隐藏的二进制文件,且密码通过密文存储,安全性最高。

以上就是MySQL免密登录的三种方式的详细内容,更多关于MySQL免密登录的资料请关注脚本之家其它相关文章!

相关文章

  • 对MySQL慢查询日志进行分析的基本教程

    对MySQL慢查询日志进行分析的基本教程

    这篇文章主要介绍了对MySQL慢查询日志进行分析的基本教程,文中提到的Query-Digest-UI这个基于B/S的图形化查看工具非常好用,需要的朋友可以参考下
    2015-12-12
  • mysql按逗号分割的实现

    mysql按逗号分割的实现

    在MySQL中,我们经常需要对数据进行拆分和处理,其中一个常见需求就是按逗号分割字符串,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • 浅谈为什么MySQL不建议delete删除数据

    浅谈为什么MySQL不建议delete删除数据

    这篇文章主要介绍了浅谈为什么MySQL不建议delete删除数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • MySQL用户权限设置保护数据库安全

    MySQL用户权限设置保护数据库安全

    MySQL用户权限设置是保护数据库安全的重要措施之一。通过为用户设置不同的权限,可以控制用户对数据库的访问能力,包括读取、修改、删除、创建等操作。合理设置用户权限可以避免误操作、非法访问等安全问题
    2023-05-05
  • MySQL与PHP的基础与应用专题之增删改查

    MySQL与PHP的基础与应用专题之增删改查

    MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,本系列将带你掌握php与mysql的基础应用,本篇从数据库的增删改查开始
    2022-02-02
  • 通过两种方式增加从库——不停止mysql服务

    通过两种方式增加从库——不停止mysql服务

    现在生产环境MySQL数据库是一主一从,由于业务量访问不断增大,故再增加一台从库。前提是不能影响线上业务使用,也就是说不能重启MySQL服务,为了避免出现其他情况,选择在网站访问量低峰期时间段操作
    2015-11-11
  • MySQL如何添加外键

    MySQL如何添加外键

    MySQL是一种常用的关系型数据库管理系统,它支持外键的添加,本文主要介绍了MySQL如何添加外键,具有一定的参考价值,感兴趣的可以了解一下
    2023-09-09
  • MySQL表内连和外连的具体使用

    MySQL表内连和外连的具体使用

    我们在使用MySQL的时候,经常涉及到内连接和外连接的应用,本文就来详细的介绍一下MySQL表内连和外连的具体使用,感兴趣的可以了解一下
    2023-10-10
  • 关于MySQL的整型数据的内存溢出问题的应对方法

    关于MySQL的整型数据的内存溢出问题的应对方法

    这篇文章主要介绍了关于MySQL的整型数据的内存溢出问题的应对方法,作者还列出了MySQL所支持的整型数据的存储空间支持大小,需要的朋友可以参考下
    2015-05-05
  • MySQL自定义序列数的实现方式

    MySQL自定义序列数的实现方式

    这篇文章主要介绍了MySQL自定义序列数的实现方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12

最新评论