mysql優化學習筆記

2021-08-18 05:00:14 字數 716 閱讀 4148

定位執行效率低的sql語句

通過explain分析效率低的sql

通過show profile分析sql

通過trace分析優化器如何選擇執行計畫

確定問題,採取措施優化

匹配全值,條件所有列都在索引中而且是等值匹配

匹配值的範圍查詢,字段必須在索引中

匹配最左字首,復合索引只會根據最左列進行查詢

僅僅對索引進行查詢,即查詢的所有欄位都在索引上

匹配列字首,比如like 'abc%',如果是like '%aaa'就不可以

如果列名是索引,使用column is null會使用索引

存在索引但不會使用索引的典型場景

以%開頭的like查詢不能使用b樹索引

資料型別出現隱式轉換不能使用索引

復合索引,查詢條件不符合最左列原則

用or分割的條件,如果前面的條件有索引,而後面的條件沒有索引

檢視索引使用的情況

show

status

like

'handler_read%';

analyze

table 表名;

check

table 表名;

optimize

table

user(表名);

MySQL優化 學習筆記(2)

資料庫設計 3nf 1.第一正規化 列欄位資訊不可再分割,關係型資料庫自然滿足。2.第二正規化 滿足第一正規化,完全依賴主鍵,既是無重複行資料,通常設定主鍵實現。3.第三正規化 滿足第二正規化,要求乙個資料庫表中不包含已在其它表中已包含的非主關鍵字資訊,減少冗餘。注意 有時候需要反第三正規化,有必要...

mysql效能優化學習筆記

數量比頻率更好 64位使用32位的伺服器版本 32位不能使用超過4g的內容,因此選擇的時候需要注意。myisam innodb cpu 64位的cpu執行64位的系統 高併發的場景,cpu數量比頻率重要 cpu密集型的場景和複雜sql則頻率越高越好 記憶體 i o 選擇伺服器版本,而不是桌面版本。核...

mysql優化學習筆記1

1.架構內容 myisam,innodb常用的兩種資料引擎,設計架構 連線層,服務層,引擎層,資料層 資料庫引擎對比 物件專案 myisam innodb 主外來鍵不支援 支援事物 表鎖,即使操作一條記錄也會鎖住整個表,不適合高併發的操作 行鎖,操作室只鎖住一行,不對其他行有影響,適合高併發的操作 ...