【问题标题】:Lumen 5.2 PDOException: SQLSTATE[08004] [1040] Too many connectionsLumen 5.2 PDOException: SQLSTATE[08004] [1040] 连接太多
【发布时间】:2016-05-19 13:00:18
【问题描述】:

运行我的 PHPUnit 测试时,我收到以下错误

PDOException: SQLSTATE[08004] [1040] Too many connections

我正在运行很多测试,但恐怕这也可能在未测试的情况下发生。

我的测试正在向我的 Lumen 5.2 API 发出大量请求。 Lumen API 基本上会收到一个请求并检查 oAuth 令牌(连接到 oAuth 数据库)。如果正确,它将连接到不同的数据库(通过在Model 中设置$connection 变量来完成)并使用Model 检索数据。

模型没有关闭连接吗? 任何的想法?我应该提供什么信息来帮助解决这个问题吗?

【问题讨论】:

  • 您是否有一些未提交的事务?
  • 我认为这实际上是因为 PHPUnit 是一个巨大的脚本。显然,当脚本完成时 Laravel/Lumen 会断开连接,但所有测试用例似乎都算作一个脚本。在tearDown 中添加\DB::disconnect(); 解决了我的问题。

标签: database laravel-5.2 lumen


【解决方案1】:

我认为这实际上是因为 PHPUnit 是一个巨大的脚本。显然,当脚本完成时 Laravel/Lumen 会断开连接,但所有测试用例似乎都算作一个脚本。添加 \DB::disconnect();在拆解中解决了我的问题。

【讨论】:

    猜你喜欢
    • 2018-12-22
    • 2012-06-29
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 2015-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多