欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2023-11-12 14:16:16
当登陆mysql时,提示: error 1045: access denied for user: 'root@localhost' (using password: ye...

当登陆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部分,这里就不再重复了.