【mysql】linux用yum安装mysql后,登陆root用户提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (..

时间:2022-07-03 19:57:34

转载请注明原地址:http://blog.csdn.net/u013190088/article/details/68165403


系统是CentOS 6.8

yum -y install mysql mysql-server mysql-devel

安装完之后

[root@iZwz9gjh3pbz2k2hin7cg8Z ~]# mysql -uroot -p

【mysql】linux用yum安装mysql后,登陆root用户提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (..
报ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)的错误。

首先把所有mysql的进程给杀掉:

ps -ef | grep mysql --color=auto

【mysql】linux用yum安装mysql后,登陆root用户提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (..
kill -9 PID杀掉即可。(上图中红框内的即为PID,每个机器上都不一样)

之后:

mysqld_safe --user=mysql --skip-grant-tables --skip-networking & 回车

就能用安全模式进到mysql了
更改root用户密码:

UPDATE mysql.user SET authentication_string=PASSWORD('admin') where USER='root';
PS:有的mysql版本可能没有authentication_string字段,是password,改一下
UPDATE mysql.user SET PASSWORD=PASSWORD('admin') where USER='root';即可

执行FLUSH PRIVILEGES;
退出mysql,再登陆即可。

可能遇到的问题:

我在操作的时候还出现了一个问题,就是提示ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)
查看mysqld运行状态

/etc/init.d/mysqld status

提示mysqld is stopped。
就算重启mysqld服务也会失败。
【mysql】linux用yum安装mysql后,登陆root用户提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (..

解决办法:
很简单,改一下权限就行。

chmod 777 -R /var/lib/mysql/

【mysql】linux用yum安装mysql后,登陆root用户提示ERROR 1045 (28000): Access denied for user 'root'@'localhost' (..
这就好了。