【发布时间】:2017-01-21 19:51:24
【问题描述】:
在guide on Azure,configuring the firewall settings 之后,我仍然无法访问我的 MySQL 数据库。即使 IP 地址被列入白名单,我也会从所有服务器获得以下信息:
PHP 警告:PDO::__construct(): MySQL server has gone away in C:\Users\admin\app\dbtest.php 第 3 行 PHP 警告:PDO::__construct():读取问候包时出错。 PID=11692 in C:\Users\admin\app\dbtest.php 上线 3
警告:PDO::__construct(): MySQL 服务器已在 C:\Users\admin\app\dbtest.php 在第 3 行
警告:PDO::__construct():读取问候包时出错。 PID=11692 in C:\Users\admin\app\dbtest.php 上线 3 连接到 SQL Server.PDOException 对象时出错( [message:protected] => SQLSTATE[HY000] [2006] MySQL 服务器已消失 [字符串:异常:私人] => [代码:受保护] => 2006 [文件:受保护] => C:\Users\admin\app\dbtest.php [行:受保护] => 3 [trace:Exception:private] => 数组 ( [0] => 数组 ( [文件] => C:\Users\admin\app\dbtest.php [行] => 3 [函数] => __构造 [类] => PDO [类型] => -> [参数] => 数组 ( [0] => mysql:dbname=mydb;host=app.database.windows.net;port=1433 2 => 管理员 2 => 通过 ) ) ) [上一个:例外:私人] => [errorInfo] => ) 1 进程以退出代码 0 结束
这是我要连接的 PHP 脚本:
<?php
try {
$conn = new PDO("mysql:dbname=db;host=app.database.windows.net;port=1433", "admin", "pass");
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch (PDOException $e) {
print("Error connecting to SQL Server.");
die(print_r($e));
}
在不超时的情况下连接到 Azure MySQL 数据库需要哪些常规连接设置?
【问题讨论】:
标签: php mysql azure pdo azure-sql-database