测试代码如下:
$pdo = new \PDO("mysql:host=123;dbname=123", "123", "123");
if (!$pdo){
echo("fail");
} else {
echo("sucess");
}
resolv.conf
已经改成:
nameserver 100.100.2.136
nameserver 100.100.2.138
不是一直报错,刷新五六次会有一两次报错。
何解?????
1
rr41ns OP H
|
2
rr41ns OP E
|
3
rr41ns OP L
|
4
rr41ns OP P
|
5
imnpc 2019-12-30 16:20:04 +08:00 1
不是要加安全组白名单过去才能连接吗?
|
9
zhs227 2019-12-30 17:51:35 +08:00
别光用 echo 啊, 直接打错误原因。
``` try { $dbh = new PDO($dsn, $user, $password); } catch (PDOException $e) { echo 'Connection failed: ' . $e->getMessage(); } ``` |
11
opengps 2019-12-30 19:06:03 +08:00
首先,你既然有内网,就不应该选择外网。
另外你查查你 ecs 里用了谁家的 dns,既然选了阿里云的 2 个产品,那就一路用阿里云的 dns 和配套会少走弯路。另外,局域网配置 hosts 可以提高稳定性,但也有一定概率带来麻烦,因为 rds 是个“智能调度”的,说不准哪天后端某些硬件出现异常,会自动修复导致内网 ip 变动 |
12
zhs227 2019-12-30 19:09:11 +08:00
unknown 就是地址没解析成功导致的。直接 SOF 高分答案,写的很好。
https://stackoverflow.com/questions/8938689/unknown-mysql-server-host |
13
rr41ns OP |