我正在尝试使用IP地址作为主机的PDO连接到数据库,但是我收到此错误:
致命错误:未捕获的异常' PDOException'与消息 ' SQLSTATE [42000] [1044]访问被拒绝用户' xxx' @'%'到数据库 ' DDD''在/Applications/MAMP/htdocs/iravin/testconnect.php:31堆栈 跟踪:#0 /Applications/MAMP/htdocs/iravin/testconnect.php(31): PDO-> __构造(' mysql:host = 162 ....',' xxx',' zzz')#1 {main}抛出 在第31行的/Applications/MAMP/htdocs/iravin/testconnect.php中
如果我使用了dns" xxx.com"作为主持人,它将正常工作。
这是我的连接代码:
$con = new PDO('mysql:host=123.123.123.12;dbname=xxx', 'zzz', 'ccc');
答案 0 :(得分:1)
try {
$con = new PDO('mysql:host=123.123.123.12;dbname=xxx', 'zzz', 'ccc');
$handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
echo "The Following error has occurred:".$e->getMessage()."";
}
检查您的用户名,数据库名称和密码是否正确。 IP地址很好,因为它说用户被拒绝访问,这意味着它不是IP。
答案 1 :(得分:0)
对于用户来说,这似乎更像是一个权限问题。看起来它可以访问域xxx.com,但不能访问ip地址。确保用户也有IP地址的礼仪。