本文主要講解mysql的性能瓶頸分析、性能指標、性能指標信息的蒐集工具與方法、分析調優工具的使用。 php
文章還沒有完成。html
性能瓶頸:mysql
慢、寫速度比讀速度慢不少 web
主要的性能指標:sql
訪問頻度,數據庫
併發鏈接量,緩存
緩存命中率,mysql優化
index使用,併發
slow log開啓與分析,app
query Log,查詢log
Threads_cached:鏈接線程緩存是否開啓 -> ON
thread_cache_size :線程緩存數的大小
query_cache_size: 查詢緩存大小
join_buffer_size :join buffer大小
tmp_table_size : tmp table 的大小 (> 16M)
max_heap_table_size: 最大堆表大小 (> 16M)
thread_cache_size : 初始連接緩存大小(start at 4)
table_open_cache: 打開表的緩存大小 (> 800)
innodb_buffer_pool_size : 緩衝池內存大小,供讀寫, 建議大於數據庫大小,全內存操做。(>= 371M)
另外還有: thread_concurrency : 併發訪問線程大小限制,建議大小: (cpu*2)
mysql的運行狀態、性能指標蒐集方法:
1.phpmyadmin能夠查看目前mysql的status,以及各個variables的狀態。
2.mycheckpoint工具:配置以後,能夠設置爲定時採集,並保存到數據庫中,以web形式繪圖展示,比較方便,這篇文章介紹了mycheckpoint的使用配置方法。
3.mysql控制檯查看,進入mysql -uroot -p; 用show status like "xxx%"; 或 show variables like "xxx%"查看;
4.dstat工具的mysql插件, 這篇文章有介紹dstat提供的mysql插件的使用方法,dstat --mysql5-io --mysql5-cmds --mysql5-keys 【詳見參考連接1】
5.mysql自帶的: mysql extended-status
mysql問題檢測,性能調優與建議工具:
1.percona-toolkit
2.tuning-primer
3.比較方便好用: mysqltuner.pl
參考連接:
2. 淘寶的mysql優化方案分享ppt: http://files.cnblogs.com/files/ToDoToTry/mysql3-110411002242-phpapp02.ppt