Mysql ERROR 1045 (28000)

PHPABC Mysql 954 次浏览 , , 没有评论

昨天yum update更新了一票东西,今天用mysql -u root -p登录mysql的时候居然出现ERROR 1045 (28000):

[root@master /etc]# mysql -u root -p
Enter password:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

解决方法:

vim /etc/my.cnf
在[mysqld]这个条目下加入

skip-grant-tables

保存退出后重启mysql

/etc/init.d/mysqld restart

这时候mysql -u root -p就可以用密码登录了,不会出现ERROR 1045 (28000),但很多操作都会受限制,因为我们不能grant。按下面的流程走:

mysql> USE mysql;
DATABASE changed
mysql> UPDATE USER SET password=password("新密码") WHERE USER="root";
Query OK, 2 ROWS affected (0.01 sec)
ROWS matched: 2 Changed: 2 Warnings: 0
mysql> FLUSH privileges;
Query OK, 0 ROWS affected (0.00 sec)
mysql> quit
Bye

改好之后,再修改一下/etc/my.cnf这个文件,把我们刚才加入的”skip-grant-tables”这行删除,保存退出再重启mysql就可以了

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Go