失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > linux下 mysql 忘记root用户密码解决办法

linux下 mysql 忘记root用户密码解决办法

时间:2020-08-09 20:31:20

相关推荐

linux下 mysql 忘记root用户密码解决办法

一、以系统的root用户(什么,你的系统的root用户密码也忘了。那只好看我另外一篇linux下忘记root用户的解决办法了先解决这个问题)登陆系统,进入终端

[root@localhost /]#

二、杀掉mysql进程

方法1、[root@localhost /]#killall mysqld

方法2、[root@localhost /]#ps -aux //查看所有进程,找到mysql进程的pid

然后

[root@localhost /]#kill pid //pid是mysql的进程号

三、用--skip-grant-tables参数启动mysqld

[root@localhost /]#/usr/local/mysql/bin/mysqld_safe --skip-grant-tables&

// 其中/usr..../bin是我的mysql安装目录

[root@localhost /]#/usr/local/mysql/bin/mysql //进入mysql

mysql> use mysql //切换到mysql database

mysql> UPDATE user SET password=password('123456') WHERE user='root';

//将root密码该为123456了

四、注意事项

The full command to load MySQL like this is:

mysqld_safe --skip-grant-tables --autoclose

(Editor's Note: Our technical reviewer found that he had to launch the mysqld_safe command

without the '--autoclose' flag, otherwise the daemon never started.)

这是国外网站说的,我没用autoclosa也成功了

但是我在执行/usr/local/mysql/bin/mysqld_safe --skip-grant-tables&即出现错误提示:

./mysqld_safe

starting mysqld daemon with databases from /usr/local/var

STOPPING server from pid file /usr/local/var/localhost.localdomain.pid

mysqld ended

然后进入/usr/local/var/

vi ./localhost.localdomain.err 内容如下:

050410 04:02:59 mysqld started

050410 4:03:00 InnoDB:Operating system error number 13 in a file operation.

InnoDB:The error means mysqld does not have the access rights to

InnoDB:the directory.

InnoDB:File name ./ibdata1

InnoDB:File operation call:'create'.

InnoDB:Cannot continue operation.

050410 04:03:00 mysqld ended

怀疑是./var目录的访问权限,故如下操作:

chmod 777 ./var

然后重新执行后台,仍出以上错误,但在localhost.localdomain.err文件中的错误信息已改为找不到一个叫做

help.*的文件了(这个文件名我记不得了)

这是因为我的mysql安装目录的读写权限是这样造成的

mysql安装目录属于用户root,但是群组是mysql的

把群组也改为root即可。

如果觉得《linux下 mysql 忘记root用户密码解决办法》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。