用PHP连接到DB的错误

时间:2012-05-06 22:50:33

标签: php mysql

我尽我所能永远不要使用PHP因为我不熟悉它我有一个我根本不懂的问题我已经尝试了很多东西,包括不包括表格参考/ config从localhost更改为mysql主机等。

它可能是非常明显的东西,但我只是没有发现它!我不知道所有的数据库凭据是完全正确的(我可以从scala和python中很好地连接它) 这里是错误(真实的用户名/密码没有OFC)

  

致命错误:未捕获异常'PDOException',消息'SQLSTATE [42000] [1044]访问被拒绝用户'username'@'10.1.1.43'到数据库'a5555413_AudioPl.users''/ home / a5555413 / public_html / drive / auth_handler.php:153堆栈跟踪:#0 /home/a5555413/public_html/drive/auth_handler.php(153):PDO-> __ construct('mysql:host = mysq ...','username ... ','passwd')#1 /home/a5555413/public_html/drive/auth_handler.php(74):AuthHandler-> GetDbConnection()#2 /home/a5555413/public_html/drive/index.php(47):AuthHandler - > AuthHandler('webui')#3 {main}在第153行/home/a5555413/public_html/drive/auth_handler.php中投放

连接代码,const是在单独的配置文件中定义的

function GetDbConnection() {
    $dbh = new PDO(Config::DB_PDO_CONNECT,
        Config::DB_PDO_USER,
        Config::DB_PDO_PASSWORD);
    $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $dbConnection = $dbh;
    return $dbConnection;
  }

2 个答案:

答案 0 :(得分:2)

访问被拒绝意味着您使用了错误的用户名/密码,和/或您正在访问的帐户未在MySQL中正确创建。

show grants for username@10.1.1.43显示什么?

如果您将帐户创建为username@machinename并且MySQL无法执行反向DNS查找以将您的IP更改回计算机名,那么您也会收到此错误。

答案 1 :(得分:0)

检查以下内容:

1)您输入了正确的数据库主机名(这不总是localhost),用户名和密码? 2)用户拥有数据库权限。

如果您不知道如何检查,请告诉我。