今天在学习个东西的时候,用到数据库了!就简单的想自己的电脑装了mysql
可是发现好久不用mysql,发现自己的mysql密码忘了!以前没有遇到过这种情况!就在网上找了找能不能有找到密码的方法!
找到了,并试了一下,记录一下!
1、首先关闭正在运行的mysql服务
大概有三种方式:
1)在windows 任务管理器中结束 mysqld.exe 进程
2)管理工具里面的服务找到 mysql服务 ,将其停止
3)在dos窗口执行net stop mysql
在这里使用第三种方式:
<span > </span>C:\Users\zhangjh>net stop mysql
<span > </span>MySQL 服务正在停止.
<span > </span>MySQL 服务已成功停止。
2、打开命令行,转到自己的mysql安装目录的bin目录下;
<span style="font-size:14px;">C:\Users\zhangjh>D:
D:\>cd D:\Program Files\MySQL\MySQL Server 5.5\bin
D:\Program Files\MySQL\MySQL Server 5.5\bin></span>
3、输入:mysqld -nt --skip-grant-tables
然后回车,如果没有错误信息,就行了;
注:skip-grant-tables参数用了之后,就可以跳过登录校验;
D:\Program Files\MySQL\MySQL Server 5.5\bin>mysqld -nt --skip-grant-tables
161023 20:10:23 [Warning] option 'new': boolean value 't' wasn't recognized. Set
to OFF.
4、一定要重新打开一个dos窗口
(因为刚才那个DOS窗口已经不能动了),同样转到mysql的bin目录下;
5、直接输入 mysql 并回车,如果成功,将出现MySQL提示符mysql>
<span style="font-size:14px;">C:\Users\zhangjh>D:
D:\>cd D:\Program Files\MySQL\MySQL Server 5.5\bin
D:\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.40 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, 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></span>
6、切换到mysql表
mysql> use mysql;
Database changed
mysql>
7、这时就可以修改密码了:
mysql> use mysql;
Database changed
mysql> UPDATE user SET password=PASSWORD("123456") WHERE user="root";
Query OK, 0 rows affected (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 0
出现上面的情况,就是密码修改成功!
8、一定不要忘记,刷新权限:
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.00 sec)
mysql>
9、
退出:退出的方法很多 有quit、exit、ctrl+c、\q 等等
10、最后一定要注销或重启计算机,然后打开MySQL服务,使用用户名root和设置的新密码就可以登录了。
11、最后提供几种mysql下修改密码的方法
大部分情况下,一般用户没有权限更改密码,只有申请了权限或root用户才可以更改密码;
1)mysqladmin -u root password "123456";
如果root已经设置过密码,采用如下方法
mysqladmin -u root password -p "123456";
2)用SET PASSWORD命令,不需要使用FLUSH PRIVILEGES;
mysql -u root -p
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('123456');
3) mysql> USE mysql;
mysql> UPDATE user SET Password = PASSWORD('123456') WHERE user='root';