Linux下Mysql密码忘记的解决
一、原因
有一台阿里云上的Mysql服务器很久没用了,想要用的时候才发现root密码被我忘记了。
二、内容
1. 检查mysql服务是否启动,如果启动,关闭mysql服务
运行命令:ps -ef | grep -i mysql
如果开着就运行关闭的命令:systemctl stop mysqld
2.修改mysql的配置文件my.conf
一般在/etc目录下,运行命令:vi /etc/my.cnf,编辑文件
在文件的[mysqld]标签下添加一句:skip-grant-tables
3.重启数据库
运行命令:systemctl start mysqld
4.查看数据库(确保数据库正常运行)
运行命令:systemctl status mysqld
5.进入到mysql数据库
运行命令:mysql -u root
6.修改密码
运行语句:use mysql;
继续运行语句:
mysql> update mysql.user set authentication_string=password('root_password') where user='root'; (root_password替换成你想要的密码)
mysql> flush privileges;
mysql> exit
7.把步骤2加的东西注释掉,再重启数据库服务,就可以使用刚才修改的密码登录数据库了。
mysql -u root -p
输入重新设置的密码。