标签归档:linux

linux下忘记MYSQL数据库root密码的恢复方法

我的VPS使用数据库都是创建数据库和只拥有这个数据库所有权限的用户来管理的,以前一口气把几个数据库和用户都建立了,之后不一直没有用root登陆了,当时设置的密码也比较复杂…时间一久(已经超过半年了)居然把root密码给忘记了.汗死了…

求助GOOGLE老师,经过十几分钟的折腾,终于把这个问题解决了,下面把具体过程说下,如果以后出了同样问题(汗)好快速解决.

1 把mysql服务停了,我的VPS用的ubuntu,停止MYSQL用的命令是

/etc/init.d/mysql stop

或者

service mysql stop

2 修改配置文件跳过权限检查模式并启动MYSQL

vi /etc/my.cnf #各个脚本安装定义的配置文件路径可能会不一样 请自行找出
skip-grant-tables #把这行添加到[mysqld]下面
service mysql start #启动MYSQL

3 现在MYSQL已经运行并可以免密码登陆了

mysql -uroot -p #回车后提示输入密码直接再按回车
use mysql;
UPDATE user SET password=password('newpassword') WHERE user='root';
quit

4 把配置文件改回来再重启MYSQL

vi /etc/my.cnf #把刚才添加进去的“skip-grant-tables”删除
service mysql start #启动MYSQL

OK.搞定收工