所以我目前的任务是调整由我的应用程序生成的相当大的报告的性能。
我打赌我将不得不使用物化视图来解决这个问题,但这并不是重点。我观察到一些奇怪的东西,我意识到我不明白,所以我想我会在这里问。
当我告诉我的应用程序创建报告时,我可以预过滤数据。对于较小的数据子集(例如仅过去 30 天),它可以工作,但比预期的要慢一些。当我对所有数据运行报告时(我最终想要这样做),应用程序在浏览器中停留在“正在连接...”。我从来没有能够让完整的报告工作,但我从来没有尝试超过几个小时。
但是,当我刚刚意识到我在我的数据库上完成了所有的调优工作和任何事情时,而报告正试图在我的应用程序中运行。我没有注意到数据库有任何减速,我可以完美地处理数据。
所以在这一点上,我可能并不像我想要的那样理解数据库。他们可以一次运行多个查询吗?因为以我幼稚的理解,我想知道,如果应用程序在其上运行大型查询,数据库是否也不应该冻结。
我正在使用 mysql 5.5。