mysql – 无法连接:用户'[user]’@’localhost’拒绝访问(使用密码:YES)

我正在尝试安装一个基于PHP的工具,它连接到一个托管在Ubuntu上的MySQL数据库.我可以从命令行登录MySQL数据库,但运行应用程序会导致此错误:

Access denied for user '[user]'@'localhost' (using password: YES)

我做了什么:使用this discussion的指导,这是我采取的一些故障排除步骤.

>尝试通过Telnet连接到MySQL导致这个乱码:

$telnet 127.0.0.1 3306
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
A
5.1.41-3ubuntu12.10XIs(ja&7FyO`r>zpDAY{Connection closed by foreign host.

>我的/etc/hosts.deny文件为空.我在/etc/hosts.allow文件中添加了以下行:

mysqld:ALL:ALLOW
mysqld-max:ALL:ALLOW
>虽然我的/etc/mysql/my.cnf文件中的bind-address设置为127.0.0.1,但我评论它无济于事.
>禁用防火墙
>刷新特权

应该注意的是,我使用以下命令在每个步骤之后重新启动MySQL:

mysqladmin -u [user] -p shutdown
mysqld_safe &

我错过了什么?

最佳答案
如果mysql管理工作,客户端程序工作吗?

如果客户端程序工作的一种可能性是mysql客户端库已过期并需要更新. (我对RedHat比较熟悉,但它可能就像sudo apt-get update php-mysql ..不是100%肯定该包名)

还要确保使用您为用户设置的确切名称.如果将用户设置为user @ localhost,则可能无法使用user@127.0.0.1

希望有所帮助

转载注明原文:mysql – 无法连接:用户'[user]’@’localhost’拒绝访问(使用密码:YES) - 代码日志