【问题标题】:Access denied with correct credentials, what is going on?使用正确的凭据拒绝访问,这是怎么回事?
【发布时间】:2016-05-24 19:36:05
【问题描述】:

作为根:

GRANT ALL PRIVILEGES ON * . * To 'JKR'@'%' IDENTIFIED BY "";
FLUSH PRIVILEGES;

在 PHP 中:

$con = new PDO("mysql:host=127.0.0.1;dbname=jkr;charset=utf8", "JKR", "");

错误信息:

Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [1044] Access denied for user ''@'localhost' to database 'jkr'' in C:\xampp\www\jkr\core\connect.php:6

出于某种原因只能以 root 身份工作... 还有我怎么会得到Access denied for user ''@'localhost'

【问题讨论】:

  • JKR'@'%' 是用户名,=127.0.0.1;dbname=jkr;charset=utf8" 是 jkr Schemaname
  • 对不起,我没有读完

标签: php mysql connect


【解决方案1】:

在我的例子中,mysql 帐户是REQUIRE SSL;必须提供ssl_ca 文件(至少)。额外的 ssl 参数在这里:http://dev.mysql.com/doc/refman/5.7/en/secure-connection-options.html

【讨论】:

    【解决方案2】:

    您的系统上很可能有一个匿名用户''@'localhost'。匿名用户是名称被忽略的用户。

    如果您使用来自localhostJKR 连接到 MySQL,它会将您与匿名用户匹配。

    您可以使用SELECT User, Host from mysql.user;查看

    有关 MySQL 匹配用户和权限的方式的详细讨论,请参阅 https://dev.mysql.com/doc/refman/5.7/en/connection-access.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-06
      相关资源
      最近更新 更多