一尘不染

pcntl_fork和MySQL连接消失了

mysql

我有一个foreach循环在其中分叉。在进程派生之后,它将访问数据库。我收到一个错误:

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

问题是,分叉 ,我将连接到数据库。

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

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

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


阅读 351

收藏
2020-05-17

共1个答案

一尘不染

(评论->每个海报要求的答案)

阅读更多内容,我发现分叉的孩子确实继承了其父母的db连接,这是一个已知的问题:http : //php.net/manual/en/function.pcntl-
fork.php#70721

2020-05-17