windows下忘记MySQL密码的修改方法

358 查看

一、windows下修改MySQL密码的方法
如果在Windows下忘记了MySQL的密码,可以这样做:
1.关闭正在运行的MySQL服务:net stop mysql或 在windows 任务管理器中结束 mysqld.exe 进程或在 管理工具里面的服务找到 mysql服务 ,将其停止;

复制代码 代码如下:
C:\Users\Administrator>net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。

2.打开命令行,转到mysql的bin目录下;
复制代码 代码如下:
C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 5.5\bin

C:\Program Files\MySQL\MySQL Server 5.5\bin>


3.输入:mysqld -nt --skip-grant-tables
然后回车,如果没有错误信息,就行了;
注:skip-grant-tables参数用了之后,就可以跳过登录校验;
复制代码 代码如下:
C:\Program Files\MySQL\MySQL Server 5.5\bin>mysqld -nt --skip-grant-tables
140317 13:23:11 [Warning] option 'new': boolean value 't' wasn't recognized. Set
 to OFF.

4.再打开一个命令行(因为刚才那个DOS窗口已经不能动了),同样转到mysql的bin目录下;
5.直接输入 mysql 并回车,如果成功,将出现MySQL提示符 >
复制代码 代码如下:
C:\Users\Administrator>cd C:\Program Files\MySQL\MySQL Server 5.5\bin

C:\Program Files\MySQL\MySQL Server 5.5\bin>mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.35 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>


6.切换到mysql表
复制代码 代码如下:
mysql>USE mysql;

7.可以修改密码了:
复制代码 代码如下:
UPDATE user SET password=PASSWORD("123456") WHERE user="root";

8.刷新权限,不要忘记了:
复制代码 代码如下:
mysql>FLUSH PRIVILEGES;

9.退出:(退出的方法很多 有quit、exit、ctrl+c、\q 等等);
10.注销或重启计算机,然后打开MySQL服务,使用用户名root和设置的新密码就可以登录了。

二、更改mysql密码常用的三种方法
大部分情况下,一般用户没有权限更改密码,只有申请了权限或root用户才可以更改密码;
1.方法1:用mysqladmin

复制代码 代码如下:
mysqladmin -u root password "123456";

如果root已经设置过密码,采用如下方法
复制代码 代码如下:
mysqladmin -u root password -p "123456";

2.方法2: 用SET PASSWORD命令,不需要使用FLUSH PRIVILEGES;
复制代码 代码如下:
mysql -u root -p
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');

3.方法3: 用UPDATE直接编辑user表
复制代码 代码如下:
mysql> USE mysql;
mysql> UPDATE user SET Password = PASSWORD('123456') WHERE user='root';