当前位置: 首页 > 面试题库 >

pcntl_fork和MySQL连接消失了

鞠泰平
2023-03-14
问题内容

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

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

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

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

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

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


问题答案:

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

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



 类似资料:
  • 我刚从自制软件在mac上安装了mysql 从终端它工作,我可以登录到mysql,但从Sequel Pro它说 无法连接到主机127.0.0.1,或者请求超时。 确保地址正确,并且您拥有必要的权限,或者尝试增加连接超时(当前为10秒)。 MySQL表示:无法加载身份验证插件“caching_sha2_password”:dlopen(/usr/local/lib/plugin/caching_sha

  • 我有以下php代码: 警告:mysqli_connect():(28000/1045):第2行/home/u536268762/public_html/index.html中的用户“u536268762_alex”srv19.main hosting.com(使用密码:YES)被拒绝访问MySQL:u536268762_alex@“srv19.main hosting.com”(使用密码:YES)

  • 问题内容: 我的Spring Boot应用程序总是在早上向我显示此whitelabel错误:无法打开JPA EntityManager进行事务;嵌套异常是javax.persistence.PersistenceException:org.hibernate.TransactionException:JDBC开始事务失败: 我在网上搜索,我认为可能是mysql关闭了8个小时的非活动连接。但是,根据

  • 我正在尝试使用docker-compose运行2个docker容器,并将mysql容器连接到app容器。mysql容器正在运行,但app容器无法启动,出现错误:错误:2003:无法连接到'127.0.0.1:3306'上的mysql服务器(111连接被拒绝)似乎我的app容器正在尝试连接我的主机mysql而不是mysql容器。 Docker-compose.yml DockerFile 这是我的d

  • 尝试创建一个简单的Jmeter 5.0测试,以使用JDBC连接配置连接到数据库。它无法连接到我本地的mySql数据库。[jdbc:mysql://localhost:3306]。我可以使用mySql工作台连接到我本地的mySql数据库,所以我知道我可以连接到它。 它似乎在方法上失败。 你有什么想法为什么会发生这种情况吗? 我在apache-jmeter-5.0\bin中尝试了不同的mysql-co

  • 我有一个使用的web服务,如下所示: 这11种联系会自行消失吗?我有什么办法可以从Java关闭他们吗?