【发布时间】:2021-08-18 11:43:45
【问题描述】:
我正在尝试访问远程 MySQL 服务器。我在远程服务器中创建了一个用户,并将所有远程权限授予所有主机。 这是我连接数据库的代码:
<?php
try{
$dsn = "mysql:host=MY_REMOTE_SERVER_IP;dbname=DB_NAME;port=3306";
$db = new PDO($dsn, 'USER_NAME','PASSWORD');
}catch(Exception $e){
echo $e->getMessage();
}
代码在我的本地主机上运行良好。我什至在Playgrounds 上尝试了代码,它运行良好。但在我的website 上,它不起作用。网站连接不上数据库,总是返回Constructor failed错误。
我网站上的 PHP 版本是 7.4,它支持 PDO。但是不知道为什么连不上?
【问题讨论】:
-
Constructor failed听起来不像是真正的异常消息。你确定这正是它所说的吗? -
能否通过 MySQL Workbench 等工具连接数据库?
-
你能提供完整和准确的错误信息吗?我看到
Constructor failed与 Intl 包有关,但没有别的。 -
@Cid 是的,我正在使用 navicat,它工作得很好。
-
@ADyson 我用错误图片编辑了帖子。
标签: php mysql pdo remote-mysql