#1.停止mysql数据库 /etc/init.d/mysqld stop #2.执行如下命令 mysqld_safe --user=mysql --skip-grant-tables --skip-networking & #3.使用root登录mysql数据库 mysql -u root mysql #4.更新root密码 mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root'; #最新版MySQL请采用如下SQL: mysql> UPDATE user SET authentication_string=PASSWORD('newpassword') where USER='root'; #5.刷新权限 mysql> FLUSH PRIVILEGES; #6.退出mysql mysql> quit #7.重启mysql /etc/init.d/mysqld restart #8.使用root用户重新登录mysql mysql -uroot -p Enter password: <输入新设的密码newpassword>
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以安全模式启动mysql,可以直接以root身份登录,然后重设密码。下面是具体步骤
1.停掉在运行的MySQL服务:
service mysqld stop
2.安全模式启动mysql:
sudo mysqld_safe --skip-grant-tables --skip-networking &
3.直接用root登录,无需密码:
mysql -uroot -p
4.重设密码:
update usersetauthentication_string=password('password') where user='root'; >> mysql5.6及以下
update user set authentication_string=password('password') where user='root'; >>mysql5.7+
5.刷新并重启
flush privileges;
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
以root用户登录,命令:mysql -uroot -p 回车 输入密码; mysql>use mysql; mysql>UPDATE user SET password=PASSWORD('输入新密码') WHERE user='root'; mysql>FLUSH PRIVILEGES;