php - pcntl_fork 和 MySQL 连接消失了

标签 php mysql zend-framework fork

我有一个 foreach 循环,它在其中 fork 。在进程 fork 后,它访问数据库。我收到一个错误:

SQLSTATE[HY000]: General error: 2006 MySQL server has gone away

问题是,我在 fork 后 连接到数据库。

我的问题:为什么会这样?

如果发生这种情况,我实际上是在 fork 之前访问数据库吗? child 会继承数据库连接吗?

(注意:我可以发布代码,但它相当大,因为它都在类中,这可能是导致我在访问数据库时感到困惑的原因。您应该知道的另一件事是我正在使用 ZF。 )

最佳答案

(评论 --> 根据发帖者的要求回答)

阅读更多内容后,我看到 fork 的 child 确实继承了他们 parent 的数据库连接,这是一个已知问题:http://php.net/manual/en/function.pcntl-fork.php#70721

关于php - pcntl_fork 和 MySQL 连接消失了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3668615/

相关文章:

php - 如何将数组元素从序列中的第 0 个索引重新排列到结尾?

javascript - Css 适用于 Dreamweaver 但不适用于 Chrome

php - mysql_fetch_array()/mysql_fetch_assoc()/mysql_fetch_row()/mysql_num_rows 等...期望参数 1 是资源

python - 获取服务器时间并在 python 中使用它

zend-framework - Zend Db Select 将子查询添加到 FROM 部分

php - 如何在 zend 框架 Controller 中包含文件?

php - 用户名可用性安全问题

php - Paypal 自定义字段

php - 自定义查询按两个元值对帖子进行排序

php - 将 View 子文件夹路由到 zend 中的 Controller