一、手动修改
- 停止MySQL服务
执行:/etc/init.d/mysql stop
,你的机器上也不一定/etc/init.d/mysql
也可能是/etc/init.d/mysqld
-
跳过验证启动MySQL
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables >/dev/null 2>&1 &
注:如果mysqld_safe的位置如果和上面不一样需要修改成你的,如果不清楚可以用find命令查找。 -
重置密码
等一会儿,然后执行:/usr/local/mysql/bin/mysql -u root mysql
出现mysql提示符后输入:update user set password = Password('要设置的密码') where User = 'root';
回车后执行:flush privileges;
刷新MySQL系统权限相关的表。再执行:exit;
退出。 -
重启MySQL
杀死MySQL进程:killall mysqld
重启MySQL:/etc/init.d/mysql start
二、使用重置脚本
wget http://soft.vpser.net/lnmp/ext/reset_mysql_root_password.sh;sh reset_mysql_root_password.sh
适合lnmp或MySQL管理脚本在/etc/init.d/mysql
且mysql安装在/usr/local/mysql/
的。否则需要修改脚本后再执行sh reset_mysql_root_password.sh。