【发布时间】: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