忘记mysql密码,如何修改 密码

版权声明:博客将逐步迁移到 http://cwqqq.com https://blog.csdn.net/cwqcwk1/article/details/17262655

MySQL的 root 帐号密码默认为空,经常都有修改密码后忘记密码的事。如果忘记了root 帐号密码,那该怎么修改密码呢?这里有一个可行的方法,就是在MySQL安全模式下(跳过权限检查)修改密码的方式来解决这个问题。本文分别对Windows环境与Linux环境下介绍MySQL忘记密码时修改密码的方法,希望帮助初学者解决丢失密码的烦恼。

Windows下MySQL重置密码

通常MySQL都是安装成Windows服务运行的。

1、启动cmd命令窗口:

# 关闭MySQL服务
D:\MySQL\bin>sc stop mysql

# 以安全模式启动MySQL
D:\MySQL\bin>mysqld --skip-grant-tables

2、不要关闭,再启动一个新的cmd命令窗口:

# 登录MySQL数据库
D:\MySQL\bin>mysql -u root -p

mysql> use mysql;
mysql> update user set password=password("123456") where user="root";
mysql> flush privileges;

!! 如果报错请点击
 

3、关闭以上两个窗口,启动MySQL服务

# 启动MySQL服务
C:\>sc start mysql

Linux下MySQL重置密码

Linux下重置密码的操作与Windows下类似。

# 停止MySQL服务
[root@www ~]# /etc/init.d/mysql stop

# 以安全模式启动MySQL
[root@www ~]# /usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
# 登录MySQL
[root@www ~]# mysql -u root -p

mysql> use mysql;
mysql> update user set password=password("123456") where user="root";
mysql> flush privileges;


# 启动MySQL服务
[root@www ~]# /etc/init.d/mysql start

注意了,MySQL5.7之后,重置root密码SQL(感谢刘韦声回复):

update mysql.user set authentication_string=password('123456') where user='root';
 


猜你喜欢

转载自www.cnblogs.com/sunshine171/p/10507722.html