mysql性能优化 洪斌_洪斌 - MySQL性能诊断与实践
1. MySQLᚆෙӨਫ᪢ ၒ්
2. य़ᕐ • ԧᥴํىᚆෙጱොဩ • ՕᕨӞԶᥡၥૡٍአဩ • ړՁӷӻໜֺ
3. پӻਧ • Little’s Law (queueing theory) • Amdahl’s Law (1967) • Universal Scalability Law (1993)
4. ᭗አොဩ • USE(Utilization Saturation and Errors) • ᅉᆎࢶon-cpu & off-cpu • ᥡၥૡٍஉ᯿ᥝ • चᕚྲ
5. MySQL֛ᔮᕮ
6. ள᭛ෙ • top ڣෙԆᨮఘ ٭ • dmesg tail ฎࣁਂވoom-killer tcp dropᒵᲙ ௳מ • vmstat 1 ༄ັr̵free̵si̵so̵us, sy, id, wa, st ڜ • mpstat -P ALL 1 ༄ັCPUֵአሲฎ࣐ވᤍ • pidstat 1 ༄ັᬰᑕጱCPUֵአሲ҅ग़໐ڥአఘ ٭ • iostat -xz 1 ༄ັr/s, w/s, rkB/s, wkB/s, await, avgqu-sz, %util • free -m ༄ັٖਂֵአఘ ٭ • sar -n DEV 1 ༄ັᗑᕶݺރᰁ • sar -n TCP,ETCP 1 ༄ັtcpᬳളఘ٭active/s, passive/s, retrans/s
7. MySQLෙૡٍ • error log & slow log & general log • MySQL SHOW [SESSION GLOBAL] STATUS • SHOW PROCESSLIST • InnoDB ਂؙකᇫா SHOW ENGINE INNODB STATUS • Explain ັ፡ಗᤈᦇ ښ • performance schema
8. ෙྍṈ 1. ༄ັᔮᕹقੴᩒრᨮ 2. ༄ັMySQLᲙ෭ப 3. ༄ັMySQLࣁ؉Ջԍ 4. ༄ັInnoDBԪۓఘ ٭ 5. ༄ັMySQL॔ګᇫா
9. InnoDB • InnoDBᤒᶳํԆᲫࠔӞᔱ SELECT t.table_schema, t.table_name FROM information_schema.tables t LEFT JOIN information_schema.table_constraints c ON (t.table_schema = c.table_schema AND t.table_name = c.table_name AND c.constraint_type IN ('PRIMARY KEY','UNIQUE')) WHERE t.table_schema NOT IN ('mysql','information_schema', ‘performance_schema') AND t.engine = ‘InnoDB' AND c.table_name IS NULL; • ԆᲫଫֵአੜහഝᔄࣳӬํଧ • عय़Ԫ(ۓᬩᤈᳵᳩݒๅᦕ୯ग़) SELECT a.requesting_trx_id 'ᤩᴥलԪۓID' ,b.trx_mysql_thread_id 'ᤩᴥलᕚᑕID', TIMESTAMPDIFF(SECOND,b.trx_wait_started,NOW()) ‘ᤩᴥलᑁහ', b.trx_query 'ᤩᴥलጱ 'ݙ, a.blocking_trx_id 'ᴥलԪۓID' ,c.trx_mysql_thread_id 'ᴥलᕚᑕID',d.INFO 'ᴥलԪ '௳מۓFROM information_schema.INNODB_LOCK_WAITS a INNER JOIN information_schema.INNODB_TRX b ON a.requesting_trx_id=b.trx_id INNER JOIN information_schema.INNODB_TRX c ON a.blocking_trx_id=c.trx_id INNER JOIN information_schema.PROCESSLIST d ON c.trx_mysql_thread_id=d.ID ;
10. ᯿ᥝ݇හ • max_connection • innodb_buffer_pool_size • Innodb_flush_neighbors • Innodb_io_capacity • Innodb_log_file_size • innodb_thread_concurrency
11. SQLս۸
12. Note • ս۸ጱ໐ஞ੪ฎ“؉Ԫ” • ۯڔፖፓ᭄๋սᯈᗝཛྷ • عᬦս۸
13. BPFฎՋԍ • BPF = Berkeley Packet Filter • The Berkeley Packet Filter (BPF) provides a raw interface to data link layers, permitting raw link-layer packets to be sent and received. • Since version 3.18, the Linux kernel includes an extended BPF virtual machine, termed extended BPF (eBPF). It can be used for non-networking purposes http://www.tcpdump.org/papers/bpf-usenix93.pdf
14. ڹկ • Linux kernel 4.4+ (വគ 4.9+ ) • ਞᤰBcc https://github.com/iovisor/bcc/blob/master/ INSTALL.md • MySQL ᖫᦲ -DENABLE_DTRACE=1 & ਞᤰ systemtap- sdt-devel
15. Bcc ૡٍᓟ 1. execsnoop 2. opensnoop 3. ext4slower 4. biolatency 5. biosnoop 6. cachestat 7. tcpconnect 8. tcpaccept 9. tcpretrans 10. gethostlatency 11. runlat 12. profile
16. Query᬴ړ
17. ౌQueryಬݐ
18. VFS ᬴ړຉ
19. Ext4 ᬴ړຉ
20. ࣘᦡ᬴॓ړຉ
21. MySQLկIOܴړێຉ
22. ԁᤒկኞޮ๗ᥡၥ
23. Ꭸᬳളړຉ
24. ໜֺ1 ݎғMySQLහഝପெԍளౌ҅ՋԍܻࢩҘ • Ջԍᔄࣳጱ᧗ౌ҅ັᧃҘٟفҘӻڦҘق᮱Ҙ • ڥአUSEොဩ༄ັᔮᕹᩒრ • ༄ັMySQL ᕚᑕᇫாਂؙකᇫா
25. ໜֺ2 xtrabackupӧฎᅾ॓ԍ҅ெԍᬮտफ֘ӱۓ thread_list=$(gdb -p $1 -q -batch -ex 'info threads' awk '/mysqld/{print $1}' grep -v '*' sort -nk1) for i in $thread_list; do echo ">>>>> thread $i <<<<:thd->command::thd->thread_id' -ex 'p do_command::thd>global_read_lock' grep -B3 GRL_ACQUIRED_AND_BLOCKS_COMMIT` if [[ $grl =~ 'GRL_ACQUIRED_AND_BLOCKS_COMMIT' ]]; then echo "$grl" ; break fi done
26. PHPCON ਥᗑғwww.phpconchina.com ق᮱ PPT ӥғhttps://github.com/ThinkDevelopers/PHPConChina ਥොQQᗭғ34449228̵135615537 ਥොلռݩғThinkInLAMP
mysql性能优化 洪斌_洪斌 - MySQL性能诊断与实践相关推荐
- mysql数据库优化韩顺平_韩顺平 Mysql数据库优化(一) 优化概述
第 1 章Mysql优化概述 网站的瓶颈在web层(web吞吐量),程序对mysql的操作.我们前面讲的页面静态化技术和memcached技术目的减少对mysql访问,但是总是访问数据库,所以我们需要 ...
- C++应用程序性能优化(三)——C++语言特性性能分析
C++应用程序性能优化(三)--C++语言特性性能分析 一.C++语言特性性能分析简介 通常大多数开发人员认为,汇编语言和C语言比较适合编写对性能要求非常高的程序,C++语言主要适用于编写复杂度非常高 ...
- 《C++应用程序性能优化::第二章C++语言特性的性能分析》学习和理解
<C++应用程序性能优化::第二章C++语言特性的性能分析>学习和理解 说明:<C++应用程序性能优化> 作者:冯宏华等 2007年版.最近出了新版,看了目录,在前面增加了一章 ...
- 抖音Android岗面试性能优化篇之Rhea(新一代全能型性能分析工具)【速看】
写在前面的话 性能优化这个知识点是很多大厂面试中都会问到的问题,尤其是想要面试抖音的Android岗的朋友. 用户交互响应的耗时,作为 Android 用户日常感知最深的一项性能指标,在日常开发中有着 ...
- mysql性能优化的最佳20条经验_MySQL性能优化的最佳20+条经验
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据 ...
- mysql 多表 查询慢_详解Mysql多表联合查询效率分析及优化
1. 多表连接类型1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用',' 如: SELECT * FROM table1 CROSS JOI ...
- mysql 5.7临时表空间_深度解析MySQL 5.7之临时表空间
临时表 临时表顾名思义,就是临时的,用完销毁掉的表. 数据既可以保存在临时的文件系统上,也可以保存在固定的磁盘文件系统上. 临时表有下面几种: 1.全局临时表 这种临时表从数据库实例启动后开始生效,在 ...
- mysql分区表truncate分区数据_详解MySQL分区表
前言: 分区是一种表的设计模式,通俗地讲表分区是将一大表,根据条件分割成若干个小表.但是对于应用程序来讲,分区的表和没有分区的表是一样的.换句话来讲,分区对于应用是透明的,只是数据库对于数据的重新整理 ...
- 【java 性能优化实战】1 理论分析:性能优化,有哪些衡量指标、性能优化的技术手段
指标是我们衡量很多事物,以及做出行为决策的重要参考.例如在生活中,当你打算买汽车时,会关注很多指标,比如动力性.燃油经济性.制动性.操纵稳定性.平顺性.通过性.排放与噪声等,而这些指标也都有相关的测试 ...
- mysql支持的并发数_重学MySQL系列(五):谈谈对MySQL的存储引擎的理解
原创作者,公众号[程序员读书],欢迎关注公众号,转载文章请注明出处哦. MySQL关于存储引擎的架构设计,相较于其他关系数据库管理系统,比如Oracle,SQL Server等数据库,这是MySQL最 ...
最新文章
- 华为自动驾驶首秀,狂到diss潜在客户
- html5游戏变速,深入游戏变速底层原理以及内核变速的实现
- 条款15: 让operator=返回*this的引用
- 工业互联网工信部苗圩谈-谋定研究:对话中国经济和信息化
- php+nginx环境配置注意事项
- SpringMVC运行流程分析
- 华为ensp小实验(路由下发+Easy IP+单臂路由+OSPF+Rip)
- c语言每个整数占9列,c语言 第五章 数据类型和表达式.ppt
- csm和uefi_关于CSM和UEFI你要知道的一些事
- 王者荣耀s24服务器维护多久才结束,王者荣耀s24赛季几点更新结束?6月23日s24赛季开启时间公布[多图]...
- python设计模式17-中介者模式
- selenium 定位方式1
- 2016 版 Laravel 系列入门教程(三)【最适合中国人的 Laravel 教程】
- python制作印刷体数据集:数字符号数据集(字符串转图片)
- 【2017最新题库】通识课尔雅人文的物理学答案题库
- python实战因子分析和主成分分析
- 计算机R3处理器,电脑r3处理器好不好
- matlab:预测股票价格走势
- 山东与河南研究咨询市场知名的调查公司情况
- 电竞英雄联盟数据API接口 - 【联赛列表】API调用示例代码
热门文章
- 阿里巴巴荣获年度最佳BCM创新实践奖
- 关于JDK中的集合总结(二)
- Bee Framework_百度百科
- exchange2003 SMTP连接器的应用案例
- 面试题 16.18. 模式匹配
- 08.为什么要使用lombok,它解决了什么问题?
- Python不能做游戏?Pygame中的对象你了解吗?
- 朗读评价语言集锦_运用朗读评价语
- php json 转arraylist,从JSONArray转换为ArrayList CustomObject - Android
- python体测成绩数据分析统计服_体测成绩数据分析