关于linux下mysql修改root密码时遇到的问题

关于linux下mysql修改root密码的流程,网上能搜到很多,大抵就是:

# killall mysqld                          //中断当前运行的mysql进程
# mysqld_safe --skip-grant-tables &       //启动安全模式
# mysql                                   //无需密码直接进入mysql
--> use mysql                             //使用mysql数据库实例
--> UPDATE user SET password=password('123') WHERE user='root';
//修改root用户密码为123

之后重启下电脑,输入命令:
  mysql -u root -p
  123
便可进入mysql数据库。

--------------------------------------------------------------------

以上方法是在网上搜到的,但在我在启动安全模式时,遇到了新的问题:

'mysql' 无效的用户
starting mysqld daemon with databases from /opt/mysql/data
stopping server from pid file /opt/mysql/data/localhost.localdomain.pid

会出现这么3行的错误信息,在网上寻觅了N久,最后总算是解决了,解决方法如下:

关于‘无效的用户’,我的解决办法是:
# groupadd mysql
# useradd -g mysql mysql

后面两行主要是data目录的权限问题,由于启动数据库时,会产生新文件到目录下,由于权限不允许导致命令终止。

但在不同的电脑上,目录名有时是不同的,会显示:
starting mysqld daemon with databases from /opt/mysql/var
stopping server from pid file /opt/mysql/var/localhost.localdomain.pid

修改权限:chmod -R 1777 data/
         或 chmod -R 1777 var/
之后再将开始的修改密码流程走一遍即可。


注:/opt/mysql/data/localhost.localdomain.err文件为mysql错误日志文件,如果有解决不了的问题,可以打开此文件查看错误日志。

你可能感兴趣的:(linux,mysql)