人生处处充满着意外,忘记了mysql密码无法登陆数据库,就需要重置mysql密码,今天以linux环境下的mysql数据密码的重置。大致的原理就是设置跳过数据库密码,然后设置登陆密码,在恢复数据登陆权限。
第一步跳过密码
使用mysql的安全模式来跳过密码验证,需要找到服务器根目录下的文件“/etc/my.cnf”
[client]
#password = your_password
port = 3306
socket = /tmp/mysql.sock
[mysqld]
skip-grant-tables
2
3
4
5
6
定位到文件中的[mysqld]标签后添加“skip-grant-tables”,然后重启mysql服务,在终端运行如下命令。
# 重启mysql服务
service mysqld stop
2
第二步重置密码
#在终端运行
mysql
mysql -u root -p
#下面的密码直接键入回车即可
# 刷新权限
flush privileges;
#重置密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
#退出
exit
2
3
4
5
6
7
8
9
10
上述第八行命令,其中的“root”代码登录用户名,“123456”指重置的密码,可以根据自己的实际情况调整。
第三步退出安全模式
删除第一步“/etc/my.cnf”,添加的“skip-grant-tables”,然后运行如下命令,重启mysql服务就可以完成数据库密码的重置。
service mysqld stop