国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫(kù) > MySQL > 正文

一些Mysql的優(yōu)化經(jīng)驗(yàn)

2024-07-24 12:55:31
字體:
供稿:網(wǎng)友
 一些 mysql 的優(yōu)化經(jīng)驗(yàn)

    1. 從數(shù)據(jù)庫(kù)結(jié)構(gòu)做起1. 字段類型的定義時(shí)遵循以下規(guī)則:1. 選用字段長(zhǎng)度最小2. 優(yōu)先使用定長(zhǎng)型3. 盡可能的定義 "not null" 4. 數(shù)值型字段中避免使用 "zerofill" 5. 如果要儲(chǔ)存的數(shù)據(jù)為字符串, 且可能值已知且有限, 優(yōu)先使用 enum 或 set 2. 索引的優(yōu)化至關(guān)重要(以下如果沒有特殊說明, 均指查詢密集的情況)

    1. 被索引的字段的長(zhǎng)度越小, 該索引的效率越高2. 被索引的字段中, 值的重復(fù)越少, 該索引的效率越高3. 查詢語句中, 如果使用了 "group" 子句, 根據(jù)其中字段出現(xiàn)的先后順序建立多字段索引4. 查詢語句中, 如果使用了 "distinct", 根據(jù)其中字段出現(xiàn)的先后順序建立多字段索引5. "where" 子句中, 出現(xiàn)對(duì)同一表中多個(gè)不同字段的 "and" 條件時(shí), 按照字段出現(xiàn)的先后順序建立多字段索引6. "where" 子句中, 出現(xiàn)對(duì)同一表中多個(gè)不同字段的 "or" 條件時(shí), 對(duì)重復(fù)值最少的字段建立單字段索引7. 進(jìn)行 "內(nèi)/外連接" 查詢時(shí), 對(duì) "連接字段" 建立索引8. 對(duì) "主鍵" 的 "unique" 索引 毫無意義, 不要使用9. 被索引字段盡可能的使用 "not null" 屬性10. 對(duì)寫入密集型表, 盡量減少索引, 尤其是 "多字段索引" 和 "unique" 索引2. 查詢語句的優(yōu)化1. 多多利用 "explain" 查詢索引使用情況, 以便找出最佳的查詢語句寫法和索引設(shè)置方案2. 慎用 "select *", 查詢時(shí)只選出必須字段3. 查詢使用索引時(shí), 所遍歷的索引條數(shù)越少, 索引字段長(zhǎng)度越小, 查詢效率越高 (可使用 "explain" 查詢索引使用情況)

    4. 避免使用 mysql 函數(shù)對(duì)查詢結(jié)果進(jìn)行處理, 將這些處理交給客戶端程序負(fù)責(zé)5. 使用 "limit" 時(shí)候, 盡量使 "limit" 出的部分位于整個(gè)結(jié)果集的前部, 這樣的查詢速度更快, 系統(tǒng)資源開銷更低6. 在 "where" 子句中使用多個(gè)字段的 "and" 條件時(shí), 各個(gè)字段出現(xiàn)的先后順序要與多字段索引中的順序相符7. 在 "where" 子句 中使用 "like" 時(shí), 只有當(dāng)通配符不出現(xiàn)在條件的最左端時(shí)才會(huì)使用索引8. 在 mysql 4.1 以上版本中, 避免使用子查詢, 盡量使用 "內(nèi)/外連接" 實(shí)現(xiàn)此功能9. 減少函數(shù)的使用, 如果可能的話, 盡量用單純的表達(dá)式來代替10. 避免在 "where" 子句中, 對(duì)不同字段進(jìn)行 "or" 條件查詢, 將其拆分成多個(gè)單一字段的查詢語句效率更高。

附: mysql 字段長(zhǎng)度說明表
mysql 字段長(zhǎng)度說明
tinyint1 字節(jié)smallint2 字節(jié)
mediumint3 字節(jié)integer:4 字節(jié)
bigint8 字節(jié)double8 字節(jié)
float(x)x <=24: 4 字節(jié)
x > 24: 8 字節(jié)
decimal(m,d)m<d: d+2 字節(jié)
m>=d: m 字節(jié)
date3 字節(jié)datetime8 字節(jié)
timestamp4 字節(jié)time4 字節(jié)
year1 字節(jié)  
char(m)m 字節(jié)varchar(m)值長(zhǎng)度 + 1 字節(jié)
tinyblob值長(zhǎng)度 + 1 字節(jié)tinytext值長(zhǎng)度 + 1 字節(jié)
blob值長(zhǎng)度 + 2 字節(jié)text值長(zhǎng)度 + 2 字節(jié)
mediumblob值長(zhǎng)度 + 3 字節(jié)mediumtext值長(zhǎng)度 + 3 字節(jié)
longblob值長(zhǎng)度 + 4 字節(jié)longtext值長(zhǎng)度 + 4 字節(jié)
enum1 或 2 字節(jié)
取決于枚舉值數(shù)
set1,2,3,4, 8
取決于成員數(shù)量
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 庆安县| 晋宁县| 吉林省| 财经| 隆安县| 辽宁省| 琼海市| 武山县| 北海市| 延安市| 建阳市| 石城县| 江北区| 武夷山市| 牙克石市| 湘西| 丽江市| 井研县| 临武县| 博乐市| 沙河市| 雅江县| 台州市| 安国市| 仁化县| 宁远县| 噶尔县| 山东| 手游| 达拉特旗| 通榆县| 通州市| 高邑县| 伊宁市| 平阴县| 阿坝县| 佛学| 洛川县| 柳林县| 富川| 镇巴县|