作为程序员一定要保持良好的睡眠,才能好编程

Linux下MySQL忘记密码的完美解决方法

发布时间:2017-05-26

msyql忘记密码



很有可能就是mysql服务器安装成功以后,不知道密码,

那么应该怎么办?


我们一般使用  linux 操作系统    那么mysql的配置文件在  /etc/my.cnf 这个位置


vim /etc/my.cnf

然后找到:

[mysqld]

在他的下面添加

段中加上一句:skip-grant-tables


如图所示:

4.jpg


加上红框的这句话,然后  保存退出

:x


并重新启动mysql服务器

service mysqld restart


启动成功以后,通过   mysql -uroot -p

password :


如果让输入密码,直接回车跳过即可


这样就登录系统了,可以执行sql语句了。



如果需要重置密码,需要 访问   mysql  这个数据库中的  user  表

# use mysql;

# select Host,User,password from user;

Host,User,Password 这三个目录可以通过select查看一下


重置密码:

update user set Password=password("123") where User="userName";


密码需要 使用password这个函数进行加密。


改完密码以后,

exit;

退出mysql服务器。


重新打开  vim /etc/my.cnf


找到 skip-grant-tables  注释掉   或删除 

如果注释,请使用  # 号进行注释


然后重新启动


service mysqld restart




//如果mysql版本数据库是5.6 则使用下面的启动语句,跳过检查密码,直接登录

/usr/local/mysql5.6/bin/mysqld_safe  --skip-grant-tables --user=mysql &



这样进入了mysql系统:

update mysql.user set Password=password("song") where User="root";
flush privileges;





成功修改后,通过

ps -ef | grep mysql  找到系统进程,一并杀死



通过下面的命令,可以直接杀死mysql进程:

kill -9 `ps -ef | grep mysql | grep -v "grep" | awk '{print $2}' | xargs`