1)檢視mysql是否開啟慢查詢日誌
show variables like 'slow_query_log';
2)設定沒有索引的記錄到慢查詢日誌
set global log_queries_not_using_indexes=on;
3)檢視超過多長時間的sql進行記錄到慢查詢日誌
show variables like 'long_query_time'
4)開啟慢查詢日誌
set global slow_query_log=on
5)檢視日誌記錄位置
show variables like 'slow_query_log_file'
6)檢視日誌
tail -50 /home/mysql/data/mysql-slow.log
7)設定把超過設定時間的sql查詢記錄到慢查詢日誌檔案中(此處為把大於1秒的查詢記錄到慢查詢日誌中)
set global long_query_time=1
pt-query-digest:
mysqldumpslow
兩款mysql慢查詢工具
用mysql官方提供的日誌分析工具檢視top3慢日誌
mysqldumpslow -t 3 /home/mysql/data/mysql-slow.log | more
使用explain分析sql
explain返回各列的含義
table:顯示這一行的資料是關於哪張表的
type:這是重要的列,顯示連線使用了何種型別。從最好到最差的連線型別為const、eq_reg、ref、range、index和all
possible_keys:顯示可能應用在這張表中的索引。如果為空,沒有可能的索引。
key:實際使用的索引。如果為null,則沒有使用索引。
key_len:使用的索引的長度。在不損失精確性的情況下,長度越短越好。
ref:顯示索引的哪一列被使用了,如果可能的話,是乙個常數
rows:mysql認為必須檢查的用來返回請求資料的行數
冗餘索引檢查
pt-duplicate-key-checker -uroot -p'root' -h 127.0.0.1
mysql資料庫優化索引 mysql資料庫索引調優
一 mysql索引 1 磁碟檔案結構 innodb引擎 frm格式檔案儲存表結構,ibd格式檔案儲存索引和資料。myisam引擎 frm格式檔案儲存表結構,myi格式檔案儲存索引,myd格式檔案儲存資料 2 mysql資料庫資料範問原理 innodb btree 1 ibd檔案中主鍵構建b tree...
mysql資料庫優先 MySQL資料庫優化
1.新增索引 mysql資料庫的四類索引 index 普通索引,資料可以重複,沒有任何限制。unique 唯一索引,要求索引列的值必須唯一,但允許有空值 如果是組合索引,那麼列值的組合必須唯一。primary key 主鍵索引,是一種特殊的唯一索引,乙個表只能有乙個主鍵,不允許有空值,一般是在建立表...
mysql資料庫優化
用到啥學啥,mysql資料庫優化成了這幾天的老大難問題。瘋狂的尋找mysql優化的資料,覺得有用的不少,記錄下跟大家分享,對了,這裡僅僅是mysql資料庫本身的優化,沒有寫磁碟之類的 開始之前,介紹倆mysql的命令 show global status 檢視執行狀態的,顯示執行各種狀態值 show...