以下语句均是添加到my.ini文件,重启mysql后生效

skip-name-resolve

此语句用于跳过dns域名解析,在局域网连接时会更快捷,不过使用此命令,mysql库的user表中的host须由原来localhost改为%,否则不能连接数据库。

skip-grant-tables

此语句用于跳过user表权限检查,在忘记密码时可以直接登录数据库

作方法:
1、杀掉原来进行着的mysql:
rcmysqld stop
或者:
service mysqld stop
或者:
kill -TERM mysqld
2、以命令行参数启动mysql:
/usr/bin/mysqld_safe  --skip-grant-tables &
./bin/mysqld_safe --skip-grant-tables --user=root&
3、修改管理员密码:
use mysql;
update user set password=password(’yournewpasswordhere’) where user=’root’;
flush privileges;
exit;
4、杀死mysql,重启mysql

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



忘记mysql root密码


如何修改mysql root密码?

作者:未知 WEB开发者 更新时间:2007-12-12 8:52:29

忘记MySQL(和PHP搭配之最佳组合) ROOT密码是在MySQL(和PHP搭配之最佳组合)使用中很常见的问题,可是有很多朋友并不会重置ROOT密码,那叫苦啊,我有深有感触,特写此文章与大家交流:

1、编辑MySQL(和PHP搭配之最佳组合)配置文件:

windows环境中:%MySQL(和PHP搭配之最佳组合)_installdir%\my.ini //一般在MySQL(和PHP搭配之最佳组合)安装目录下有my.ini即MySQL(和PHP搭配之最佳组合)的配置文件。 
linux环境中:/etc/my.cnf

在[MySQL(和PHP搭配之最佳组合)d]配置段添加如下一行: 
skip-grant-tables

保存退出编辑。

2、然后重启MySQL(和PHP搭配之最佳组合)服务

windows环境中: 
net stop MySQL(和PHP搭配之最佳组合) 
net start MySQL(和PHP搭配之最佳组合)

linux环境中: 
/etc/init.d/MySQL(和PHP搭配之最佳组合)d restart

3、设置新的ROOT密码

然后再在命令行下执行: 
MySQL(和PHP搭配之最佳组合) -uroot -p MySQL(和PHP搭配之最佳组合) 
直接回车无需密码即可进入数据库了。

现在我们执行如下语句把root密码更新为 7758521: 
update user set password=PASSWORD("7758521") where user='root';

quit 退出MySQL(和PHP搭配之最佳组合)。

4、还原配置文件并重启服务

然后修改MySQL(和PHP搭配之最佳组合)配置文件把刚才添加的那一行删除。

再次重起MySQL(和PHP搭配之最佳组合)服务,密码修改完毕。

修改完毕。

用新密码7758521试一下吧,又能登入MySQL(和PHP搭配之最佳组合)的感觉就是不一样吧?