【MySQL】忘记root用户密码详细解决方法

mysql忘记root密码的解决方法:

1、 首先检查mysql服务是否启动,若已启动则先将其停止服务,可在开始菜单的运行,使用命令:

net stop mysql

或者在windows任务管理器中结束mysqld.exe进程,或者在控制面板,管理工具里面的服务找到mysql,将其停止服务。

打开第一个cmd窗口,切换到mysqlbin目录,运行命令:

mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

注释:

该命令通过跳过权限安全检查,开启mysql服务,这样连接mysql时,可以不用输入用户密码。

"C:\Program Files\MySQL\MySQL Server 5.1\my.ini"指配置文件my.ini,一般在mysql安装目录里面。

如:

===============================================================================

C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables
110301  9:20:07 [Warning] '--default-character-set' is deprecated and will be removed in a future release. Please use '--character-set-server' instead.
110301  9:20:07 [Note] Plugin 'FEDERATED' is disabled.
110301  9:20:07  InnoDB: Initializing buffer pool, size = 46.0M
110301  9:20:07  InnoDB: Completed initialization of buffer pool
110301  9:20:07  InnoDB: Started; log sequence number 0 44233
110301  9:20:07 [Note] mysqld: ready for connections.
Version: '5.1.55-community'  socket: ''  port: 3306  MySQL Community Server (GPL)

2、打开第二个cmd窗口,连接mysql

输入命令:

mysql -uroot -p

出现:

Enter password:

在这里直接回车,不用输入密码。

然后就就会出现登录成功的信息,

如:

===============================================================================

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.1.55-community MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

===============================================================================

使用命令:

show databases;

显示已有数据库:

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| test               |

+--------------------+

3 rows in set (0.00 sec)

使用命令切换到mysql数据库:

use mysql;

使用命令更改root密码:

UPDATE user SET Password=PASSWORD('newpassword') where USER='root';

刷新权限:

FLUSH PRIVILEGES;

然后退出,重新登录:

quit

重新登录:

mysql -uroot -p

出现输入密码提示,输入新的密码即可登录:

Enter password: ***********

显示登录信息:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 9

Server version: 5.1.55-community MySQL Community Server (GPL)

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

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

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

mysql>

到这里root密码就已经修改成功了,用Ctrl+C将第一个cmd窗口结束,那样就会停止mysql服务,如:

=============================================================================== C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqld --defaults-file="C:\Program F

iles\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

110301 10:29:47 [Warning] '--default-character-set' is deprecated and will be re

moved in a future release. Please use '--character-set-server' instead.

110301 10:29:47 [Note] Plugin 'FEDERATED' is disabled.

110301 10:29:47  InnoDB: Initializing buffer pool, size = 46.0M

110301 10:29:47  InnoDB: Completed initialization of buffer pool

110301 10:29:48  InnoDB: Started; log sequence number 0 44233

110301 10:29:48 [Note] mysqld: ready for connections.

Version: '5.1.55-community'  socket: ''  port: 3306  MySQL Community Server (GPL)

(此处输入ctrl+c

110301 10:30:58 [Note] mysqld: Normal shutdown

110301 10:30:58  InnoDB: Starting shutdown...

110301 10:31:03  InnoDB: Shutdown completed; log sequence number 0 44233

110301 10:31:03 [Note] mysqld: Shutdown complete

Mysql服务停止了,输入命令:

net start mysql,即可重新启动mysql服务,如:

===============================================================================

C:\Program Files\MySQL\MySQL Server 5.1\bin>net start mysql

MySQL 服务正在启动 .

MySQL 服务已经启动成功。

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

===============================================================================

全部流程的操作信息,如下:

停止mysql服务方法1

停止mysql服务方法2

停止mysql服务方法3

第一个CMD窗口:

===============================================================================

C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

110301  9:20:07 [Warning] '--default-character-set' is deprecated and will be re

moved in a future release. Please use '--character-set-server' instead.

110301  9:20:07 [Note] Plugin 'FEDERATED' is disabled.

110301  9:20:07  InnoDB: Initializing buffer pool, size = 46.0M

110301  9:20:07  InnoDB: Completed initialization of buffer pool

110301  9:20:07  InnoDB: Started; log sequence number 0 44233

110301  9:20:07 [Note] mysqld: ready for connections.

Version: '5.1.55-community'  socket: ''  port: 3306  MySQL Community Server (GPL)

===============================================================================

第二个CMD窗口:

===============================================================================

Microsoft Windows XP [版本 5.1.2600]

(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>mysql -uroot -p

Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 3

Server version: 5.1.55-community MySQL Community Server (GPL)

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

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

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

mysql> show databases;

+--------------------+

| Database           |

+--------------------+

| information_schema |

| mysql              |

| test               |

+--------------------+

3 rows in set (0.00 sec)

mysql> use mysql;

Database changed

mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';

Query OK, 2 rows affected (0.03 sec)

Rows matched: 2  Changed: 2  Warnings: 0

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

mysql> quit

Bye

C:\Documents and Settings\Administrator>mysql -uroot -p

Enter password: ***********

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 9

Server version: 5.1.55-community MySQL Community Server (GPL)

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

This software comes with ABSOLUTELY NO WARRANTY. This is free software,

and you are welcome to modify and redistribute it under the GPL v2 license

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

mysql>

===============================================================================

结束第一个窗口,输入ctrl+c命令停止mysql服务:

C:\Program Files\MySQL\MySQL Server 5.1\bin>mysqld --defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini" --console --skip-grant-tables

110301 10:29:47 [Warning] '--default-character-set' is deprecated and will be re

moved in a future release. Please use '--character-set-server' instead.

110301 10:29:47 [Note] Plugin 'FEDERATED' is disabled.

110301 10:29:47  InnoDB: Initializing buffer pool, size = 46.0M

110301 10:29:47  InnoDB: Completed initialization of buffer pool

110301 10:29:48  InnoDB: Started; log sequence number 0 44233

110301 10:29:48 [Note] mysqld: ready for connections.

Version: '5.1.55-community'  socket: ''  port: 3306  MySQL Community Server (GPL)

(此处输入ctrl+c

110301 10:30:58 [Note] mysqld: Normal shutdown

110301 10:30:58  InnoDB: Starting shutdown...

110301 10:31:03  InnoDB: Shutdown completed; log sequence number 0 44233

110301 10:31:03 [Note] mysqld: Shutdown complete

重新启动mysql服务:

C:\Program Files\MySQL\MySQL Server 5.1\bin>net start mysql

MySQL 服务正在启动 .

MySQL 服务已经启动成功。

_________________________________________________________________________________________________________________________________

使用mysql时,打开cmd,输入net start mysql,提示服务名无效,查看服务列表,结果找不到mysql服务。

解决方案:(参考以下命令)

1、打开cmd,切换到mysql的bin目录下

2、 D:\Program Files\MySQL5.1\bin>mysqld.exe -install

Service successfully installed.

3、 D:\Program Files\MySQL5.1\bin>net start mysql

MySQL 服务已经启动成功。

打开服务列表,看到mysql服务了

你可能感兴趣的:(【MySQL】忘记root用户密码详细解决方法)