【发布时间】:2019-10-13 14:47:49
【问题描述】:
我正在使用 linux 并尝试使用 php 7.2 创建一些表,但是当我执行命令时它会给出如下错误。谁能帮我解决这个问题?
[PDOException] SQLSTATE[HY000] [2006] MySQL 服务器已消失
[ErrorException] PDO::__construct(): MySQL 服务器已消失
class Database extends PDO{
function __construct(){
$options = array(
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
try{
parent::__construct(DB_TYPE.':host='.DB_HOST.';dbname='.DB_NAME.';charset=utf8',DB_USER,DB_PASS, $options);
}catch (PDOException $e) {
echo "Got PDOException\n";
var_dump($this);
}
}
}
我无法将此页面的说明设置为我拥有的课程 https://dev.mysql.com/doc/refman/8.0/en/gone-away.html
【问题讨论】:
-
ATTR_PERSISTENT选项会导致问题。 PHP 认为连接仍然存在,但它以某种方式关闭。所以你得到一个错误。见this question -
不,很遗憾,这根本不重要