mysql 忘记密码的解决方法(linux和windows小结)


当登陆MYSQL时,提示:
ERROR 1045: Access denied for user: 'root@localhost' (Using password: YES)
说明密码不正确,当确实忘记密码时,要怎么办呢? 难道重新安装,当然不需要了.

Linux或UNIX

1. 用root或者以mysqld的用户登录系统
2. 利用kill命令结束掉mysqld的进程
3. 使用 --skip-grant-tables 参数启动MySQL, 假设MySql安装目录在 /usr/local/mysql/ , 进入shell.
4. 执行 /usr/local/mysql/mysqld_safe --skip-grant-tables & 启动mysql守护进程
6. 执行 /usr/local/mysql/mysqladmin -u root flush-privileges password "newpassword" 为root用户重新设置密码
7. 重新启动mysqld

第6步也可以直接修改mysql用户表:

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

Windows:

1. 管理员登陆系统,停止mysql服务或者结束mysqld-nt进程
2. 进入命令行,来到mysql的安装目录.假设安装目录为 d:\mysql\ , CMD进入命令行
3. 运行 d:\mysql\bin\mysqld-nt --skip-grant-tables 启动mysql,关闭权限的检查
4. 运行 d:\mysql\bin\mysqladmin -u root flush-privileges password "newpassword" 重设root密码
5. 重新启动mysql服务

第4步也可以直接修改mysql表,所用到的SQL语句同linux部分,这里就不再重复了.


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3