優化
1.對查詢進行優化,應盡量避免全表掃瞄,首先應考慮在 where 及 order by 涉及的列上建立索引。
2.應盡量避免在 where 子句中對字段進行 null 值判斷,否則將導致引擎放棄使用索引而進行全表掃瞄,如:
select id from t where num is null
可以在num上設定預設值0,確保表中num列沒有null值,然後這樣查詢:
select id from t where num=0
3.應盡量避免在 where 子句中使用!=或<>操作符,否則將引擎放棄使用索引而進行全表掃瞄。
4.應盡量避免在 where 子句中使用 or 來連線條件,否則將導致引擎放棄使用索引而進行全表掃瞄,如:
select id from t where num=10 or num=20
可以這樣查詢:
select id from t where num=10
union all
select id from t where num=20
5.in 和 not in 也要慎用,否則會導致全表掃瞄,如:
select id from t where num in(1,2,3)
對於連續的數值,能用 between 就不要用 in 了:
select id from t where num between 1 and 3
6.下面的查詢也將導致全表掃瞄:
select id from t where name like 『%abc%』
7.應盡量避免在 where 子句中對字段進行表示式操作,這將導致引擎放棄使用索引而進行全表掃瞄。如:
select id from t where num/2=100
應改為:
select id from t where num=100*2
8.應盡量避免在where子句中對字段進行函式操作,這將導致引擎放棄使用索引而進行全表掃瞄。如:
select id from t where substring(name,1,3)=『abc』–name以abc開頭的id
應改為:
select id from t where name like 『abc%』
9.不要在 where 子句中的「=」左邊進行函式、算術運算或其他表示式運算,否則系統將可能無法正確使用索引。
Mysql安裝 配置 優化
1 在安裝介面配置 1 安裝完成之後,需要配置mysql服務。mysql安裝包給我們預設提供了最佳配置,此處配置保持預設即可,一路下一步。2 配置密碼。mysql安裝完成之後,需要給root使用者設定密碼,密碼設定完成之後,務必牢記,後續使用root使用者訪問mysql服務時必須使用該密碼。3 配置...
Mysql安裝 配置 優化
一 儲存引擎 mysql中有多種儲存引擎,一般常見的有三種 通常的觀點是myisam 注重效能,innodb注重事務,所以一邊使用myisam類的表做非事務型的業務。這種觀點是由於早期innodb引擎還不成熟,而事實上並不是這樣的。mysql在高併發下的效能瓶頸很明顯,主要原因就是鎖定機制導致的堵塞...
Mysql安裝 配置 優化
一 環境準備 wget p usr local src wget p usr local src 安裝基礎軟體 yum y install make gcc c bison devel ncurses devel 二 安裝配置mysql 編譯安裝cmake tar zxvf usr local sr...