【问题标题】:Access denied for user 'myuser'@'localhost' (Using password: NO), when I am using a password当我使用密码时,用户 'myuser'@'localhost' 的访问被拒绝(使用密码:否)
【发布时间】:2013-04-03 22:57:47
【问题描述】:

这是我的代码,在远程服务器上:

$username = 'myuser';
$password = 'password';
mysql_connect('localhost', $username, $password) or die ('blah blah blah');

而且偶尔,它会给我这个错误:

拒绝用户“myuser”@“localhost”访问(使用密码:否)

此错误持续大约 6 分钟,然后消失

为什么会这样?我该如何解决?

P.S.:请不要担心我使用mysql_*。我也是用mysqli的,问题也出现了。请帮忙。

【问题讨论】:

  • “偶尔”和“逐渐消失”是什么意思?
  • @BotskoNet 好吧,问题每天出现一次,停留六分钟,然后消失。
  • @BotskoNet 虽然偶尔会持续大约 40 分钟。
  • 这很奇怪。 MySQL 服务器是否在“停机时间”期间甚至响应?我从未见过它不一致地拒绝连接。本地是否只有一个 MySQL 安装,并且 PHP 脚本不可能开始使用不同的凭据?没有人在加载另一个脚本/设置不同的凭据?
  • 我建议实现一个简单的日志来找出调用的内容并确保您的密码变量已被填写。您还查看了 mysql/php 日志吗?可能是配置有问题?

标签: php mysql mysql-connect


【解决方案1】:

因为,您收到的错误是

拒绝用户“myuser”@“localhost”访问(使用密码:否)

而不是

哈哈哈哈哈哈

die ('blah blah blah'); 段中定义;该错误不是因为您连接到 MySQL 服务器。

这很可能是因为用户 myuser 没有PRIVILEGES 来执行您要求它执行的任务(可能是DELETE,可能是UPDATE,甚至可能是SELECT)

【讨论】:

  • 因此,如果用户缺乏权限,该函数会告诉您您没有使用密码,即使您使用了?这似乎不合逻辑!
猜你喜欢
  • 1970-01-01
  • 2015-10-07
  • 2018-02-22
  • 2016-12-27
  • 2012-06-17
  • 2019-12-19
  • 2017-10-26
相关资源
最近更新 更多