一、LINUX
1>修改MySQL的登录设置:
- # vi /etc/my.cnf
在[MySQLd]的段中加上一句:skip-grant-tables
例如:
- [MySQLd]
- datadir=/var/lib/MySQL
- socket=/var/lib/MySQL/MySQL.sock
- skip-name-resolve
- skip-grant-tables
保存并且退出vi。
2>重新启动MySQLd
- # /etc/init.d/MySQLd restart
- Stopping MySQL: [ OK ]
- Starting MySQL: [ OK ]
3>登录并修改MySQLroot密码
Xml代码
- # /usr/bin/MySQL
- .
- MySQL> USE MySQL ;
- MySQL> UPDATE user SET Password = password('new-password') WHERE User = 'root' ;
- MySQL> flush privileges ;
- MySQL> quit
- 4>将MySQL的登录设置修改回来
- # vi /etc/my.cnf
将刚才在[MySQLd]的段中加上的skip-grant-tables删除
保存并且退出vi。
5>重新启动MySQLd
- # /etc/init.d/MySQLd restart
- Stopping MySQL: [ OK ]
- Starting MySQL: [ OK ]
二、WINDOWS
1、停止mysql:net stop mysql
2、绕过检查启动:mysqld --skip-grant-tables (其他版本可能是 mysqld-nt --skip-grant-tables,回车后如果光标在闪烁,说明mysql已经按照这种方式启动了,具体可以在任务管理器里面查看是否有mysqld进程)
3、重新开一个cmd窗口,输入 mysql (OK,不用输入密码就进来了)
mysql>use mysql
mysql>update user set password=PASSWORD('new_password') where user='root';
mysql>flush privileges;
mysql>quit
4、重启mysql,搞定
本文介绍了在Linux和Windows环境下如何重置MySQL root用户的密码。通过禁用权限表、登录数据库、更新root用户密码并重启MySQL服务等步骤实现密码重置。
158

被折叠的 条评论
为什么被折叠?



