mysql关闭日志提升性能_最好的MySQL性能调整工具?[关闭]

小编典典

坏消息是:有GUI工具可以帮助解决此问题,但这是一项熟练而广泛的工作。因此,它们不能涵盖所有内容,可能您需要使用命令行的东西/

sql语句等来提供帮助。我只真正使用过命令行工具。我将概述一些我知道/曾经使用过的东西:

首先,您需要一个良好的数据库设计。如果设计不好,那么您只能走得太远。这包括规范化,以及对字段使用适当的类型。我将这一点留在这里,因为我认为这是一个问题,而不是您所追求的。

确保MySQL Query

Cache已设置并且可以正常工作,并且如果可以的话,给它更多的RAM,并确保您的重要查询没有采取任何措施阻止mysql对其进行缓存。例如,由于显而易见的原因,在查询中使用NOW()函数可以做到这一点-

NOW每秒都会变化!您可以改为在SQL中添加时间戳,并使用最接近的分钟/小时/天(您可以避免的最大时间)来使mysql获得一些缓存好处。

要开始进行优化,请执行以下操作:在select前面加上“

EXPLAIN”是查看查询如何执行并确定如何改进查询的方式。学习解释输出:http : //dev.mysql.com/doc/refman/5.0/en/using-

explain.html您通常可以在现有索引中添加新索引/添加列以改善性能。但是,您还会遇到需要重组查询的情况。

使用MySQL提高性能(假设您还不知道问题查询是什么)的开始是检查慢查询日志-它会将所有耗时超过x秒的查询记录到文件中。

概述,包括配置(如果尚未记录的话)位于:http : //dev.mysql.com/doc/refman/5.0/en/slow-query-

log.html-我还发现将long_query_time设置为0表示一天左右的时间,以便将所有查询都记录在此处并记录所花费的时间,这是一种有用的方法,可让您准确了解性能的发展方向。但是我不会立即去那里!而且不要将其保留,日志可能会变得很大。

完成几天的日志记录后,我从这里找到了mysqlsla(mysql缓慢日志分析器):http

://hackmysql.com/mysqlsla 是一个很好的工具。

它不仅可以进行缓慢的查询日志分析,还可以做更多的工作-

阅读手册。但是要解释一下它对慢速日志的作用:慢速查询日志可能包含大量数据,因此很难找出哪些查询是整体上最昂贵的-

例如:将它们运行多少次以及何时进行两次查询的因素考虑在内实际上,它们在where子句中具有相同的ID。

MySQL

sla为您完成了所有这一切。它遍历日志,并且可以对where子句中相同/具有不同值的查询进行分组。然后(默认情况下)向您显示总执行时间最多的10个查询-

这通常会让人感到有些意外,但通常是最有效率的起点-选择最昂贵的查询并对其使用EXPLAIN,看看是否可以改进它。

有些查询会花费很长时间,并且无法轻松进行改进。在这种情况下,您可以通过其他方式获取数据还是至少将其缓存?您甚至可能会发现需要更改数据库架构。类似地,某些查询可能位于mysqlsla输出的顶部,因为您运行了很多查询(即使long_query_time设置为0时尤其如此),即使它们运行得非常快。也许是时候为您的应用添加一些缓存了?

http://www.maatkit.org/看起来也很有希望-从未使用过,但是mk-query-

profiler工具应该对进一步研究查询变慢的原因很有用。

还需要查看一个完全独立的内容:PHPMYADMIN中的“状态”页面(或者您可以运行所有查询以生成此信息…。)-以红色突出显示它认为可能不好的内容,并且可以帮助您看看您可以从分配系统资源中受益。我对此并不太了解-

我的方法一直是,如果某些东西是红色的并且看起来很糟糕,请去阅读它,并确定它是否重要以及我是否应该做点什么(通常意味着向MySQL分配更多的资源)通过更改配置)。

最近,我发现在受苦的服务器上运行SHOW

PROCESSLIST也可能很有用。尽管它只提供实时(实时快照)信息,但它可以帮助您了解给定时间的状况,尤其是刷新几次并观察更改时。我最近发现了一个服务器,它使用每个可用的mysql连接使用此方法运行相同的查询。当然,它一直在缓慢的查询日志中,但这确实是查看结果的一种快速而明显的方法。

2020-05-17

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值