一步到位实现MySQL优化
----从硬件、系统、配置、设计等多角度优化MySQL
叶金荣
QQ群: 373900864 、125572178、272675472
weibo:***@yejinrong,, 微信公众号:MySQL中文网
About Me
•叶金荣,网络常用ID:yejr
• Oracle ACE(MySQL)
• 2006年创办国内首个MySQL专业技术网站
•精通MySQL数据库,10年+MySQL相关工作经验,擅长MySQL优化、架构设
计、故障处理
About Me
MySQL经历
• MySQl ~ now()
• 2000 ~ now
• 2012, ORACLE ACE(MySQL)
Linux经历
•蓝点Linux 、TurboLinux、FreeBSD、Debian、Ubuntu、Fedora、CentOS、RHEL
About Me
联系方式
•(国内首个MySQL技术博客站,From 2006)
• QQ群: 373900864 、125572178、272675472
• QQ:4700963
• Weibo: @叶金荣
•微信公众号:MySQL中文网
• imysql@
MySQL的特点
Not ORACLE,Not SQL Server,Not PostgreSQL
Not Excel, Not Access
Not File Storage
Not Calculator
Not Seach Engin
Not ...
MySQL is MySQL
MySQL的特点
CPU的利用特点
•<,多核心支持较弱
• ,可利用4个核
• ,可利用24个核
• ,可利用64个核
•每个连接对应一个线程,每个并发query只能使用到一个核
MySQL的特点
内存利用特点
•类似ORACLE的SGA、PGA模式,注意PGA不宜分配过大
•内存管理简单、有效。在高TPS、高并发环境下,可增加物理内存以减少物理IO,提高并发性能
•官方分支锁并发竞争比较严重,MariaDB、Percona进行优化
•有类似ORACLE library cache的query cache,但效果不佳,建议关闭
•执行计划没有缓存(类似ORACLE的library cache)
•通常内存建议按热点数据总量的15%-20%来规划,专用单实例则可以分配物理内存的50~70%左右
•类似K-V简单数据,采用memcached、Redis等NOSQL来缓存
MySQL的特点
对磁盘的利用特点
• binlog、redo log、undo log主要顺序IO
• datafile是随机IO和顺序IO都有
• OLTP业务以随机IO为主,建议加大内存,尽量合并随机IO为顺序IO
• OLAP业务以顺序IO为主,极大内存的同时增加硬盘数量提高顺序IO性能
• MyISAM是堆组织表(HOT),InnoDB是索引组织表(IOT)
• InnoDB相比MyISAM更消耗磁盘空间
优化思路
•确认问题
•确认瓶颈
•制定方案
•测试方案
•实施方案
•回顾反馈
确认瓶颈
• top
• vmstat
• sar
• iotop
• dstat
• oprofile
MySQL技术分享:一步到位实现MySQL优化 - 20141024 来自淘豆网m.daumloan.com转载请标明出处.