MySQL 重设密码

某MC服把服务器上mysql的root密码居然给忘了。。。
于是。。。搜了一番,找到了这样的一个教程:
https://segmentfault.com/a/1190000000412194
一、适合ubuntu/debian的方式
这个方法只能用于ubuntu/debian 系统上,不过好处在于不需要停掉mysql的服务

cat /etc/mysql/debian.cnf

显示的内容是:

# Automatically generated for Debian scripts. DO NOT TOUCH!
[client]
host = localhost
user = debian-sys-maint
password = PASSWORD
socket = /var/run/mysqld/mysqld.sock
[mysql_upgrade]
host = localhost
user = debian-sys-maint
password = PASSWORD
socket = /var/run/mysqld/mysqld.sock
basedir = /usr

我们记下来其中的user和password
然后直接

mysql -udebian-sys-maint -p

回车后输入password里面的密码,成功进入~
然后直接:

use mysql;
update user set password=PASSWORD("newpassword") where User='root';
flush privileges;

全部执行完后就OK了~
二、比较通用的办法
这个办法需要停mysql,不过像是centos之类的可以用这个方法

service mysql stop

以安全模式启动mysql

mysqld_safe --skip-grant-tables --skip-networking &

然后直接登陆,不需要添加-p

mysql -uroot

成功登陆,然后改密码~

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注