原链接:http://www.cnblogs.com/wrmfw/archive/2011/09/05/2166929.html
众所周知,大访问量的情况下,可添加节点或改变架构可有效的缓解数据库压力,不过一切的原点,都是从单台mysql开始的。下面总结一些使用过或者研究过的经验,从配置以及调节索引的方面入手,对mysql进行一些优化。
第一步应该做的就是排查问题,找出瓶颈,所以,先从日志入手
开启慢查询日志
mysql>show variables like “%slow%”; 查看慢查询配置,没有则在my.cnf中添加,如下
log-slow-queries = /data/mysqldata/slowquery.log #日志目录
long_query_time = 1 #记录下查询时间查过1秒
log-queries-not-using-indexes #表示记录下没有使用索引的查询
分析日志 – mysqldumpslow
分析日志,可用mysql提供的mysqldumpslow,使用很简单,参数可–help查看
# -s:排序方式。c , t , l , r 表示记录次数、时间、查询时间的多少、返回的记录数排序;
# ac , at , al , ar 表示相应的倒叙;
# -t:返回前面多少条的数据;
# -g:包含什么,大小写不敏感的;
mysqldumpslow -s r -t 10 /slowquery.log #slow记录最多的10个语句
mysqldumpslow -s t -t 10 -g "left join" /slowquery.log #按照时间排序前10中含有"left join"的
推荐用分析日志工具 – mysqlsla
wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz
tar zvxf mysqlsla-2.03.tar.gz
cd mysqlsla-2.03
perl Makefile.PL
make
make install
mysqlsla /data/mysqldata/slow.log
# mysqlsla会自动判断日志类型,为了方便可以建立一个配置文件“~/.mysqlsla”
# 在文件里写上:top=100,这样会打印出前100条结果。
【说明】
queries total: 总查询次数 unique:去重后的sql数量
sorted by : 输出报表的内容排序
最重大的慢sql统计信息, 包括 平均执行时间, 等待锁时间, 结果行的总数, 扫描的行总数.
Count, sql的执行次数及占总的slow log数量的百分比.
Time, 执行时间, 包括总时间, 平均时间, 最小, 最大时间, 时间占到总慢sql时间的百分比.
95% of Time, 去除最快和最慢的sql, 覆盖率占95%的sql的执行时间.
Lock Time, 等待锁的时间.
95% of Lock , 95%的慢sql等待锁时间.
Rows sent, 结果行统计数量, 包括平均, 最小, 最大数量.
Rows examined, 扫描的行数量.
Database, 属于哪个数据库
Users, 哪个用户,IP, 占到所有用户执行的sql百分比
Query abstract, 抽象后的sql语句
Query sample, sql语句
分享到:
相关推荐
Mysql 慢查询日志查看是指在 Mysql 数据库中,记录和分析执行时间较长的查询语句,以便优化数据库性能和提高查询效率。慢查询日志查看可以帮助数据库管理员和开发者快速地定位和优化数据库中的性能瓶颈。 一、慢...
MySQL慢查询日志是MySQL提供的一种日志记录方式,用于记录所有执行时间超过指定阈值(默认10秒)的SQL语句,帮助开发者和DBA定位数据库性能瓶颈,优化SQL查询效率。 #### 开启与配置 1. **开启慢查询日志:** - ...
### MySQL慢查询日志详解 #### 一、慢查询日志概述 MySQL慢查询日志是一种重要的工具,用于记录执行时间超过预设阈值的SQL语句。通过对这些记录进行分析,可以找出数据库中的性能瓶颈,并据此采取相应的优化措施。...
### MySQL慢查询日志详解 #### 一、慢查询日志简介 MySQL慢查询日志是一种重要的工具,用于记录执行时间超过指定阈值的SQL语句。这些记录可以帮助数据库管理员和开发人员识别并优化那些效率较低的查询,从而提高...
MySQLsla是一款专为MySQL数据库设计的慢查询日志分析工具,它可以帮助数据库管理员高效地分析和理解MySQL服务器上的慢查询情况,从而优化数据库性能。在MySQL的运行过程中,某些SQL语句执行时间过长,就会被记录到慢...
首先,要了解MySQL慢查询日志的概念。慢查询日志记录了所有执行时间超过`long_query_time`值的SQL语句。默认情况下,`long_query_time`的值设置为10秒,意味着所有运行时间超过10秒的SQL语句都会被记录下来。然而,...
MySQL 的慢日志配置查询和 Show Processlist 使用 MySQL 的慢日志配置查询和 Show Processlist 使用是 MySQL 中两个非常重要的概念,它们都是用于优化和 Troubleshooting MySQL 性能的关键工具。在这篇文章中,我们...
### MySQL慢查询日志:性能分析的利器 #### 一、引言:慢查询日志的重要性 在数据库管理中,性能分析是一个至关重要的过程。随着业务的发展和数据量的增长,数据库面临的压力也在不断增加,这就需要我们不断寻找...
总结来说,MySQL 慢查询页面工具 Query-Digest-UI 是一个基于 Percona Toolkit 的图形化监控解决方案,它帮助管理员可视化 MySQL 的慢查询日志,从而更有效地进行性能调优。通过安装和配置该工具,你可以实时监控...
MySQL的慢查询日志是数据库管理员用于识别...总之,MySQL慢查询日志是数据库性能调优的重要入口,通过分析并优化慢查询,可以有效地提升系统的整体性能。在日常运维中,定期检查和处理慢查询日志是一项必不可少的工作。
MySQL的日志功能包括错误日志、查询日志、慢查询日志等,可以通过配置文件调整日志设置。例如,开启慢查询日志: ``` slow_query_log = 1 slow_query_log_file = /var/log/mysql/slow.log long_query_time = 1 ``` ...
总之,理解并有效地使用MySQL的通用查询日志和慢查询日志是数据库性能监控和调优的关键步骤。通过对日志的分析,我们可以识别潜在的性能问题,进而采取措施优化数据库,提升服务质量和用户体验。
1. **MySQL慢查询日志**:MySQL数据库允许管理员开启慢查询日志,记录那些执行时间过长的SQL语句,有助于性能调优。 2. **C++编程**: Slowquery使用C++编写,这是一种强大的编程语言,能够提供高性能和低级别的内存...
本文将详细讲解如何利用慢查询日志来优化线上MySQL数据库的性能,并介绍相关的操作步骤和命令。 首先,我们要了解什么是慢查询日志。MySQL的慢查询日志记录了那些执行时间超过预设阈值的SQL语句,这有助于识别并...
以下是关于如何开启、查看和分析MySQL慢查询日志的详细说明: 首先,要在MySQL中启用慢查询日志,你需要编辑MySQL配置文件。在Windows系统中,该文件通常是`my.ini`,而在Linux系统中则是`my.cnf`。在`[mysqld]`...
mysql的slow_query_log慢查询日志分析工具说明,主要用来进行慢查询日志的linux平台分析输出结果文档进行MySQL的调优/优化数据库
MySQL的慢查询日志是数据库...总的来说,Anemometer作为MySQL慢查询工具,提供了一种有效监控和诊断数据库性能的方式。通过深入理解和充分利用这个工具,数据库管理员能够及时发现并解决性能问题,提升系统的整体效率。
### MySQL慢查询相关知识 #### 一、概览 MySQL慢查询是指那些执行时间超过预设阈值的SQL语句。这些慢查询不仅会降低数据库性能,还可能导致用户体验下降。因此,了解如何诊断和优化慢查询是每个DBA或开发人员必备...
1. **mysqldumpslow**:MySQL官方提供的慢查询日志分析工具,支持基本的统计信息提取。 2. **mysqlsla**:Perl脚本,功能强大,支持高级统计信息提取,能够生成全面的数据报表。 3. **mysql-explain-slow-log**:...