@H_403_1@我们有一个已建立的Web应用程序,该数据库应用程序由mysql数据库支持.我们每月将数据递增地添加到各个表中.
在最近更新之后,数据库性能已大大降低,我们不得不撤消更新.
到目前为止,我已经确定了Web服务逻辑中涉及的查询-没有更新,只是读取.我已经确定所有查询都使用高效的表索引. @H_403_1@我知道这是一个很难诊断的问题,我不希望在这里找到确切的答案,我只需要进一步诊断的一些建议,并提供需要调查的地方的提示,以找出导致问题的原因.
在最近更新之后,数据库性能已大大降低,我们不得不撤消更新.
到目前为止,我已经确定了Web服务逻辑中涉及的查询-没有更新,只是读取.我已经确定所有查询都使用高效的表索引. @H_403_1@我知道这是一个很难诊断的问题,我不希望在这里找到确切的答案,我只需要进一步诊断的一些建议,并提供需要调查的地方的提示,以找出导致问题的原因.
最佳答案
可以产生巨大影响的一件事是如何为给定的使用模式将内存分配给MySQL.
@H_403_1@查询缓存,innodb缓冲区等的相对大小应根据您的特定需求进行调整.
@H_403_1@这里有一些链接可以帮助我解决相同类型的问题.
@H_403_1@MySQL Server Performance(需要免费注册)
@H_403_1@10 MySQL Variables that You Should Monitor
@H_403_1@Understanding Performance Statistics
@H_403_1@MySQLTuner是用perl编写的出色(免费)调试诊断工具.
@H_403_1@确保已启用慢查询日志并定期对其进行检查.随着数据量的增长,过去速度很快.重新调整内存参数后,随着将资源从一种查询类型转移到另一种查询类型,快速查询也会变慢,反之亦然.
@H_403_1@即使查询对您来说看起来不错,也请确保并运行Explain命令以验证正在使用索引.
@H_403_1@另外,我从Sun购买了MysqL Enterprise,发现其中包含的性能监视器和查询分析器非常有用.
原文链接:https://www.f2er.com/mysql/532048.html