返回列表 发帖

重置MySQL5.5/5.6/5.7的用户密码

重置MySQL的数据库管理员root的密码:(不知道密码,无法登录数据库的情况下)

[root@localhost ~]# mysql_root_password='123456a'  #新的密码

[root@localhost ~]# service mysql stop


确认以下命令已经安装好:
[root@localhost ~]# find / -name "mysqld_safe"
/usr/local/mysql/bin/mysqld_safe

[root@localhost ~]# find / -name "mysql"
/usr/local/mysql/bin/mysql


显示当前MySQL的版本:
[root@localhost ~]# cur_mysql_version=`mysql -V | awk '{print $5}' | tr -d ","`
[root@localhost ~]# echo $cur_mysql_version
5.5.48


## Starting MySQL with skip grant tables  #免密码验证登录MySQL
[root@localhost ~]# mysqld_safe --skip-grant-tables >/dev/null 2>&1 &
[1] 14743



### MySQL5.5、MySQL5.6的重置方法

[root@localhost ~]# mysql -u root mysql << EOF
update user set password = Password('${mysql_root_password}') where User = 'root';
EOF

### MySQL5.5、MySQL5.6的重置方法



### MySQL5.7的重置方法

[root@localhost ~]# mysql -u root mysql << EOF
update user set authentication_string = Password('${mysql_root_password}') where User = 'root';
EOF

### MySQL5.7的重置方法



[root@localhost ~]# killall -9 mysqld

[root@localhost ~]# service mysql start



重置MySQL的数据库管理员root的密码成功:
mysql -u"root" -p"123456a"
图片1.png
2020-7-3 11:01





##########

MySQL5.5、MySQL5.6、MySQL5.7的数据库管理员root都可以设置空密码:

[root@localhost ~]# mysql_root_password=''  #新的密码

然后按上面的流程再做一遍即可。


效果:
图片2.png
2020-7-3 11:01


图片3.png
2020-7-3 11:01


图片4.png
2020-7-3 11:02






相关文章:
MySQL5.6的数据库管理员root@localhost设置空密码,
可参考: Zabbix使用模板监控MySQL主从同步状态

MySQL5.5中修改普通数据库用户的密码,
可参考:
使用SQLyog远程管理MySQL
LNMP一键安装包(lamp_Apache2.4用户验证+phpMyAdmin)

重置MySQL8.0的用户密码,
可参考: CentOS8_重置MySQL8.0的用户密码

重置MariaDB的用户密码,
可参考: CentOS8安装LNMP+phpMyAdmin

MySQL5.5的安装可参考: LNMP一键安装包(lnmp_CentOS6.9)
MySQL5.6的安装可参考: LNMP一键安装包(lamp_CentOS6.9)
MySQL5.7的安装可参考: LNMP一键安装包(lnmpa_CentOS6.9)

返回列表