我正在使用 Laravel 5,我注意到在每次加载页面时,laravel 都会尝试连接到数据库。您可以通过为默认数据库设置无效凭据来检查此行为。你会在每次页面加载时得到一个错误,所以这意味着 Laravel 尝试连接到数据库。这甚至发生在维护模式页面上。
这是为什么?有什么可以阻止 Laravel 这样做的吗?不查询数据库的页面无需连接数据库。
最佳答案
Laravel 只有在第一次需要数据库时才真正连接到数据库。通常,这是您第一次查询数据库。如果您从不查询数据库,它就永远不会尝试连接到它。
这有点简化。您可能有一些自定义代码会出于某种原因检查与数据库的连接,这将需要连接到它,但这是一种不太常见的情况,您可能会知道。
如果您的应用程序在每次页面加载时都连接到数据库,这意味着您正在尝试在每次页面加载时运行查询。这可能意味着您有一个查询正在中间件、服务提供商甚至您的路由文件中运行。
如果您启用了调试,则 PDOExecption 从您的无效密码中提供的堆栈跟踪应该指向正在尝试的查询,以及它从哪里运行。
关于mysql - Laravel 会在每次请求时连接到数据库。我怎样才能阻止这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35392693/