- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mysql性能优化慢查询分析优化索引和配置
mysql性能优化-慢查询分析、优化索引和配置
目录
一、优化概述
二、查询与索引优化分析
1性能瓶颈定位
Show命令
慢查询日志
explain分析查询
profiling分析查询
?
2索引及查询优化
三、配置优化
1) ? ? ?max_connections
2) ? ? ?back_log
3) ? ? ?interactive_timeout
4) ? ? ?key_buffer_size
5) ? ? ?query_cache_size
6) ? ? ?record_buffer_size
7) ? ? ?read_rnd_buffer_size
8) ? ? ?sort_buffer_size
9) ? ? ?join_buffer_size
10) ? ?table_cache
11) ? ?max_heap_table_size
12) ? ?tmp_table_size
13) ? ?thread_cache_size
14) ? ?thread_concurrency
15) ? ?wait_timeout
?
一、?优化概述
MySQL数据库是常见的两个瓶颈是CPU和I/O的瓶颈,CPU在饱和的时候一般发生在数据装入内存或从磁盘上读取数据时候。磁盘I/O瓶颈发生在装入数据远大于内存容量的时候,如果应用分布在网络上,那么查询量相当大的时候那么平瓶颈就会出现在网络上,我们可以用mpstat, iostat, sar和vmstat来查看系统的性能状态。
除了服务器硬件的性能瓶颈,对于MySQL系统本身,我们可以使用工具来优化数据库的性能,通常有三种:使用索引,使用EXPLAIN分析查询以及调整MySQL的内部配置。
二、查询与索引优化分析
在优化MySQL时,通常需要对数据库进行分析,常见的分析手段有慢查询日志,EXPLAIN?分析查询,profiling分析以及show命令查询系统状态及系统变量,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。
1 性能瓶颈定位
Show命令
我们可以通过show命令查看MySQL状态及变量,找到系统的瓶颈:
Mysql show status ——显示状态信息(扩展show status like ‘XXX’)
Mysql show variables ——显示系统变量(扩展show variables like ‘XXX’)
Mysql show innodb status ——显示InnoDB存储引擎的状态
Mysql show processlist ——查看当前SQL执行,包括执行状态、是否锁表等
Shell mysqladmin variables -u username -p password——显示系统变量
Shell mysqladmin extended-status -u username -p password——显示状态信息
查看状态变量及帮助:
Shell mysqld –verbose –help [|more #逐行显示]
?
比较全的Show命令的使用可参考: //18/
慢查询日志
慢查询日志开启:
在配置文件f或my.ini中在[mysqld]一行下面加入两个配置参数
log-slow-queries=/data/mysqldata/slow-query.log???????????
long_query_time=2??????????????????????? ?????????????????????????????????????????
注:log-slow-queries参数为慢查询日志存放的位置,一般这个目录要有mysql的运行帐号的可写权限,一般都将这个目录设置为mysql的数据存放目录;
long_query_time=2中的2表示查询超过两秒才记录;
在f或者my.ini中添加log-queries-not-using-indexes参数,表示记录下没有使用索引的查询。
log-slow-queries=/data/mysqldata/slow-query.log???????????
long_query_time=10???????????????????????????????????????????????????????????????
log-queries-not-using-indexes?????????????????????????????????????????????
慢查询日志开启方法二:
我们可以通过命令行设置变量来即时启动慢日志查询。由下图可知慢日志没有打开,slow_launch_time=#?表示如果建立线程花费了比这个值更长的时间,slow_launch_thre
您可能关注的文档
- midasNFX有限元分析教程.docx
- MIMO论文2x2MIMOOFDM实时平台设计与开发.doc
- ME研究报告.docx
- MIMO技术杂谈(一)鱼与熊掌能否兼得浅谈分集与复用的权衡.docx
- midas连续梁桥设计专题.docx
- MindraryBC5500型血细胞分析仪操作维护规程.doc
- MIMICS软件在人体骨组织重建方面的应用.doc
- MineADS操作流程.doc
- minRNA检测方法.doc
- minix操作系统分析.doc
- 2025年广西中考地理二轮复习:专题四+人地协调观+课件.pptx
- 2025年广西中考地理二轮复习:专题三+综合思维+课件.pptx
- 2025年中考地理一轮教材梳理:第4讲+天气与气候.pptx
- 第5讲+世界的居民课件+2025年中考地理一轮教材梳理(商务星球版).pptx
- 冀教版一年级上册数学精品教学课件 第1单元 熟悉的数与加减法 1.1.6 认识1-9 第6课时 合与分.ppt
- 2025年中考一轮道德与法治复习课件:坚持宪法至上.pptx
- 2025年河北省中考一轮道德与法治复习课件:崇尚法治精神.pptx
- 八年级下册第二单元+理解权利义务+课件-2025年吉林省中考道德与法治一轮复习.pptx
- 精品解析:湖南省娄底市2019-2020学年八年级(上)期中考试物理试题(原卷版).doc
- 2025年中考地理一轮教材梳理:第10讲+中国的疆域与人口.pptx
文档评论(0)