工作記錄 mysql調優例子

2021-08-21 16:24:58 字數 972 閱讀 6569

同事跟我反應線上的專案有乙個後台列表響應的很慢,我就抽空看了下

列表是由乙個ajax從後台取出json資料,所有的開銷都是php+mysql,chrome network顯示那個請求需要26s的響應。我的第一反應應該是資料量大了mysql查詢慢導致。

我記得這個專案配置了慢查詢日誌,於是

show global variables like '%slow%'    #檢視是否開啟滿查詢
slow_query_log 的值為 on 已經開啟了慢查詢

show global variables like '%long%'   #檢視滿查詢日誌檔案在**
我看了下慢查詢記錄,果然記錄剛剛的查詢,花費時間16s

我複製出該條語句並在本地用備份資料進行分析

麥庫截圖20171106115702934.jpg

可以看到該查詢影響了2個表分別是2882和1339行,並且沒有使用索引。

於是我就給他們的關聯字段加上了索引。

alter table `smsmsg`

add index `phone` (`phone`);

alter table `user`

add index `phone` (`phone`);

最終響應時間縮短到了56ms,再次分析查詢語句

麥庫截圖20171106115612990.jpg

使用到了索引,並且影響行數只有30和1了!

mysql 調優 Mysql調優

表設計 1 禁止使用外來鍵 2 多表中的相同列,必須保證列定義一致 3 國內表預設使用innodb,表字符集預設使用gbk,國際預設使用utf8的表 4 表必須包含gmt create和gmt modified欄位,即表必須包含記錄建立時間和修改時間的字段 5 單錶一到兩年內資料量超過500w或資料...

Elasticsearch調優記錄

部署elasticsearch服務,主要提供記錄使用者登入日誌 訪問日誌,統計,查詢等功能。遇到的問題為 cpu使用率激增到60 左右,最高值到達90 伺服器監控系統開始報警。elasticsearch是基於j a開發的,先檢視elasticsearch程序的運 況,然後檢視jvm相關引數。生產環境...

mysql調優書籍 mysql調優從書寫sql開始

理論知識 mysql 的執行機制 mysql 的sql關鍵字執行順序 1 mysql 的優化方案有哪些?1 mysql 資料庫常見的優化手段分為三個層面 sql 和索引優化 資料庫結構優化 系統硬體優化等 前兩個可以通過日常的書寫sql來實現,養成好的習慣可以事半功倍。2 sql 和索引優化習慣準則...