关于 PDO 驱动 Maximum execution time 的错误

线上运行的程序在日志文件中总是会报出类似以下错误,但是又无法看出问题的错误在哪里出现的,请问大家有没有遇到过类似的问题?

日志文件如下:

[2019-08-12 14:14:32] local.ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Maximum execution time of 180 seconds exceeded' in D:\...\vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOStatement.php:91
Stack trace:
#0 {main}  

看了一下报错地方提到的代码(vendor\doctrine\dbal\lib\Doctrine\DBAL\Driver\PDOStatement.php):

    /**
     * {@inheritdoc}
     */
    public function execute($params = null)
    {
        try {
            return parent::execute($params);
        } catch (\PDOException $exception) {
            throw new PDOException($exception);
        }
    }

看起来应该是执行某个Sql的时候耗时引发的问题,想请教大家有没有遇到类似问题,都是如何解决的。

Laravel版本5.4,PHP版本5.6

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 3
Epona

优化代码吧,如果某个任务确实 需要消耗这么长的时间 可以增加执行时间

ini_set('max_execution_time', 300);
4年前 评论
mouyong

请确认你服务器能否正常连接数据库

4年前 评论

explain SQL 看是否命中索引
像这种问题你应该提供: 你单表多少数据, 你提供的错误毫无参考价值
上面的推荐都是 饮鸩止渴.

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!