MySQL簡單的優化

2021-08-11 00:14:25 字數 1149 閱讀 8805

最近在看mysql的優化,就做了下筆記,就當給自己一次理論知識上的提公升

通過不同的方式達到提高資料庫效能的目的。

優化包括多個方面,比如查詢速度、更新速度、mysql伺服器效能等

分析查詢語句  

desc 查詢語句;

1)select_type:查詢語句的型別。

****** 表示簡單查詢;

primary 表示主查詢;

union 表示子查詢。

2)table: 表示查詢的表名。

3)type: 表示表的連線型別。

system 表示表中只有一條記錄;

const 表示表中有多條記錄,但只從中查詢一條記錄;

all 表示對錶進行了完整的掃瞄;

eq_ref 表示多表連線時,後面的表使用了主鍵或唯一約束;

ref 表示使用了索引;

range 表示查詢語句中給出了查詢範圍;

index 表示對錶中的索引進行了完整的掃瞄;

4)possible_keys:表示表中可能使用的索引。

5)key: 表示查詢使用到的索引。

6)key_len: 表示索引欄位的長度。

7)ref: 表示使用哪個列與索引一起來查詢。

8)rows: 表示查詢的行數。

9)extra: 表示查詢過程的附件資訊。

索引可以提高查詢的速度,但是需要注意有些時候,索引並不會發揮作用:

1、如果查詢中使用了like關鍵字,並且匹配字元第乙個字元為'%'或者'_',則不會使用索引。

2、如果表中建立了多列索引,只有查詢條件中使用了這些欄位中的第乙個欄位是,才會使用索引。

1、禁用索引

禁用:alter table 表名 disable keys;

開啟:alter table 表名 enable keys;

2、禁用唯一性檢查

禁用:set unique_checks=0;

開啟:set unique_checks=1;

3、優化sql語句,批處理執行。

Mysql簡單優化

日誌類 long query time 1 和 log slow queries usr local mysql logs log slow.log 設定慢查詢日誌記錄路徑和超時時間。ln s dev null mysql history 指定日誌檔案到黑洞,日誌檔案在使用者家目錄下,名字是.mys...

MySQL簡單優化

公司公升級了伺服器的配置,記憶體吃緊的問題得以解決,由此想到了幾個優化mysql的簡單方法。首先明確兩件事,我們的業務場景是常見的高併發web服務,查詢速度是重中之重。還有就是優化前一定要備份資料庫,不然出問題就只能跑路了。1.使用固態硬碟 這個優化方法毫無技術含量,完全就是花錢買效能,但是不得不說...

MySQL的簡單優化整理

第一次發文章,簡單整理一下,順便理一理思路 1 在建立表結構時選擇合適的字段型別 謹慎使用blog,text 2 在使用blog,text,或者資料結構過大時不常用的字段進行分表儲存 3 當表中資料量過大時可以進行表的拆分 分表 橫向 縱向 4 可以進行資料庫的主 從配置 讀 寫分離,提高效能 5 ...