香港云主机最佳企业级服务商!

ADSL拨号VPS包含了中国大陆(联通,移动,电信,)

中国香港,国外拨号VPS。

当前位置:云主机 > MYSQL >

电信ADSL拨号VPS
联通ADSL拨号VPS
移动ADSL拨号VPS

详解mysql5.7密码忘记解决方法


时间:2020-11-03 13:41 作者:admin


ENV:

[root@centos7 ~]# uname -r3.10.0-514.el7.x86_64[root@centos7 ~]# cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) [root@centos7 ~]# rpm -qa mysql/' target='_blank'>mysql[root@centos7 ~]# rpm -qa |grep MySQLmysql-community-common-5.7.26-1.el7.x86_64mysql-community-client-5.7.26-1.el7.x86_64mysql57-community-release-el7-11.noarchmysql-community-server-5.7.26-1.el7.x86_64mysql-community-libs-5.7.26-1.el7.x86_64mysql-community-libs-compat-5.7.26-1.el7.x86_64

登陆时出错:

[root@centos7 ~]# mysql -u root -pEnter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

密码忘记了(和刚安装后不知道密码一样)

网上有人说mysql的密码是空密码,其实在mysql5.7版本之后,密码不再是空密码了,

如果是刚安装的,可以在mysql的日志文件找到

grep 'temporary password' /var/log/mysqld.log

补充:如果找到mysql提供的密码,可以使用

mysqladmin -u root -p 'mysql提供的密码' password ‘自己的新密码'

直接修改mysql的密码,但这种方法存在安全隐患,毕竟密码在命令行上显示了,不建议但不反对。

如果是忘记,修改如下:

1.修改 /etc/my.cnf,加入 skip-grant-tables;

[root@centos7 ~]# vim /etc/my.cnf

空白位置加入,并保存退出;

[mysqld]     skip-name-resolveskip-grant-tables
[root@centos7 ~]# systemctl restart mysqld

2.空密码直接进入mysql;

[root@centos7 ~]# mysql -u root -pEnter password: (这里是空密码,直接回车)Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 2Server version: 5.7.26 MySQL Community Server (GPL) Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

进入mysql库;

mysql> use mysqlReading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -A Database changedmysql>

这里的mysql并不是没变,数据库位置是变化的;

3.修改密码:UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';

mysql> UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root';Query OK, 1 row affected, 1 warning (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 1 mysql> mysql> FLUSH PRIVILEGES;Query OK, 0 rows affected (0.00 sec) mysql>

4改回/etc/my.cnf

注释掉 #skip-grant-tables

[root@centos7 ~]# vim /etc/my.cnf
[mysqld]     skip-name-resolve#skip-grant-tables
[root@centos7 ~]# systemctl restart mysqld

5.用新的密码再进入mysql;

[root@centos7 ~]# mysql -u root -p Enter password: (之前演示为newpassword)Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 6Server version: 5.7.26 Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

6.更改root密码,更改root密码: alter user 'root'@'localhost' identified by '密码';

修改用户密码;

ALTER USER testuser IDENTIFIED BY '123456';

修改当前登录用户

ALTER USER USER() IDENTIFIED BY '123456';
mysql> alter user user() identified by 'Linuxpassword!@#';ERROR 1819 (HY000): Your password does not satisfy the current policy requirementsmysql> alter user user() identified by 'LINUX123password!@#';Query OK, 0 rows affected (0.00 sec) mysql> 

可以看出,密码的复杂度有了很大的要求;

7.修改完成后就可以继续操作mysql了

mysql> show databases;+--------------------+| Database      |+--------------------+| information_schema || mysql       || performance_schema || sys        |+--------------------+4 rows in set (0.00 sec) mysql> exitBye

以上所述是小编给大家介绍的mysql5.7密码忘记解决方法详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

(责任编辑:admin)






帮助中心
会员注册
找回密码
新闻中心
快捷通道
域名登录面板
虚机登录面板
云主机登录面板
关于我们
关于我们
联系我们
联系方式

售前咨询:17830004266(重庆移动)

企业QQ:383546523

《中华人民共和国工业和信息化部》 编号:ICP备00012341号

Copyright © 2002 -2018 香港云主机 版权所有
声明:香港云主机品牌标志、品牌吉祥物均已注册商标,版权所有,窃用必究

云官方微信

在线客服

  • 企业QQ: 点击这里给我发消息
  • 技术支持:383546523

  • 公司总台电话:17830004266(重庆移动)
  • 售前咨询热线:17830004266(重庆移动)