MySQL中忘记了root密码怎么办?

首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。

windows环境:

1、以系统管理员身份登陆系统。

2、打开CMD窗口,输入命令:net stop MySQL 停止Mysql运行。

3、CMD下进入MySQL的bin目录下后,通过命令跳过权限检查启动MySQL:

MySQLd-nt –skip-grant-tables

5、打开新cmd窗口,进入bin目录下,输入目录:

MySQLadmin -u root flush-privileges password "newpassword"

MySQLadmin -u root -p shutdown //提示重新输密码。

6、输入并执行net start MySQL启动Mysql。

附:MySQL4.1以上版本密码错误问题的一种解决方法

1、# SET PASSWORD FOR 'user'@'host' = OLD_PASSWORD('newpassword');

2、# FLUSH PRIVILEGES;

3、MySQL数据库修复

myisamchk -r -q d:\MySQL\data\latin1\* 

r 代表修复
q 代表快速
* 代表数据库里的所有文件

Linux环境:

1、停止mysql服务:
/etc/init.d/mysql stop

2、取消权限验证,启动mysql daemon服务:
mysqld_safe --skip-grant-tables & 

3、登录:

mysql -uroot

4、修改root帐号密码:
mysql> use mysql;
mysql> update user set password=password("newpassword") where user="root";
mysql> flush privileges;
mysql> quit;

5、重启mysql。

posted on 2015-01-23 14:15  newdingyue  阅读(199)  评论(0编辑  收藏  举报

导航