您的位置:首页 > 数据库 > MySQL

ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

2016-05-04 10:20 615 查看
环境介绍:

Centos 6.X

数据库:MariaDB5.5.-10.1.13

手动更改MySQL密码后,提示如下报错ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'

root cause:

mysql数据库的user表里,存在用户名为空的账户可以视为匿名账户,导致登录的时候是虽然输入的是root,但实际用匿名登录的;

解决办法:

在my.cnf的[mysqld]字段加入:

skip-grant-tables

重启mysql服务,然后进入mysql

mysql>use mysql;

mysql>update user set password=password('新密码') WHERE User='root'; 

mysql>flush privileges;

运行之后最后去掉my.cnf中的skip-grant-tables,重启mysqld即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: