介紹幾種mysql常用的優(yōu)化方法
發(fā)表時間:2023-08-01 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]1.選取適當?shù)淖侄螌傩。例如,在定義郵政編碼這個字段時,如果將其設(shè)置為CHAR(255),顯然給數(shù)據(jù)庫增加了不必要的空間,甚至使用VARCHAR這種類型也是多余的,因為CHAR(6)就可以很好的完成...
1.選取適當?shù)淖侄螌傩浴@,?strong>定義郵政編碼這個字段時,如果將其設(shè)置為CHAR(255),顯然給數(shù)據(jù)庫增加了不必要的空間,甚至使用VARCHAR這種類型也是多余的,因為CHAR(6)就可以很好的完成任務(wù)了。或者使用
MEDIUMINT來定義
整型字段。
2.應(yīng)該盡量把字段設(shè)置為NOTNULL。
3.使用連接(JOIN)來代替子查詢
4.事務(wù)處理
5、鎖定表
6、使用外鍵
7、使用索引
該對哪些字段建立索引呢?
一般說來,索引應(yīng)建立在那些將用于JOIN,WHERE判斷和ORDERBY排序的字段上。盡量不要對數(shù)據(jù)庫中某個含有大量重復(fù)的值的字段建立索引。對于一個ENUM類型的字段來說,出現(xiàn)大量重復(fù)值是很有可能的情況
例如customerinfo中的“province”..字段,在這樣的字段上建立索引將不會有什么幫助;相反,還有可能降低數(shù)據(jù)庫的性能。我們在創(chuàng)建表的時候可以同時創(chuàng)建合適的索引,也可以使用ALTERTABLE或CREATEINDEX在以后創(chuàng)建索引。此外,MySQL從版本3.23.23開始支持全文索引和搜索。全文索引在MySQL中是一個FULLTEXT類型索引,但僅能用于MyISAM類型的表。對于一個大的數(shù)據(jù)庫,將數(shù)據(jù)裝載到一個沒有FULLTEXT索引的表中,然后再使用ALTERTABLE或CREATEINDEX創(chuàng)建索引,將是非?斓。但如果將數(shù)據(jù)裝載到一個已經(jīng)有FULLTEXT索引的表中,執(zhí)行過程將會非常慢。
8、優(yōu)化的查詢語句
以上就是介紹幾種mysql常用的優(yōu)化方法的詳細內(nèi)容,更多請關(guān)注php中文網(wǎng)其它相關(guān)文章!
學(xué)習教程快速掌握從入門到精通的SQL知識。