mysql中的root密码忘记了怎么办

2025-02-22 21:48:34
推荐回答(3个)
回答1:

解决方法如下:

让mysql不载入权限表,命令:mysqld --skip-grant-tables(windows)、mysqld_safe --skip-grant-tables user=mysql或者

/etc/init.d/mysql start --mysqld  --skip-grant-tables (linux)

打开另外一个命令窗口,进入mysql的交互界面,密码随便输入。

用update语句设置密码(此时不能用set password语句)。

验证密码修改是否成功

回答2:

前段时间更改mysql中root密码时随意自己弄了一个,也没当会事,10.1回来用的时候才发现自己忘了密码了 从网上搜了下,做了下列总结: 首先在命令行里关闭mysql服务 net stop mysql 然后在命令行里,以不检查权限的方式启动; mysqld --skip-grant-tables 界面会一直停留在那,不用理它。 然后重新开打一个命令提示符的窗口(CMD)用空密码方式使用root用户登录 MySQL; mysql -u root 直接进去了, 修改root用户的密码; mysql update mysql.user set password=PASSWORD('新密码') where User='root'; mysql flush privileges;mysql quit然后 按住键盘上的CTRL + ALT+ DEL 键 ,打开任务管理器,结束mysql-nt进程 将mysql服务关闭重新启动下 然后重新打开命令行界面 mysql -uroot -p 输入你新的密码就OK了; 以上是windows下的mysql的密码破解方法, 下面我讲下linux下的mysql中 在etc/my.cnf的[mysqld]字段加入: skip-grant-tables 重启mysql服务,这时的mysql不需要密码即可登录数据库 然后进入mysql mysqluse mysql; mysqlupdate user set password=password('新密码') WHERE User='root'; 运行之后最后去掉etc/my.cnf中的skip-grant-tables,重启mysqld即可

回答3:

1.停止mysqld服务
[root@Server]# service mysqld stop

2.以跳过授权的方式启动mysql
[root@Server]# mysqld_safe --skip-grant-tables &

3.以root用户登录mysql
[root@Server huage]# mysql -u root

4.进入mysql数据库
mysql> use mysql

5.更新mysql数据库中的user表的root的password字段
mysql> update user set password=PASSWORD("new_password") where User="root";

6.刷新权限,使其立即生效,之后退出mysql,并重新启动mysql
mysql> flush privileges;
mysql> quit
[root@Server]# service mysqld restart