mysql資料庫優化

2021-08-28 16:28:49 字數 1071 閱讀 5828

索引優化策略

定長和變長要分離

id int,4 個位元組,char(4)4個位元組,time 都是定長的

varchartextblob這些是不定長的單獨放一張表,通過主鍵關聯起來

分開放置的主要原因是,如果是定長,那個可以通過計算,快速定位到資料在硬碟的位置,速度會快很多。

常用的字段和不常用的字段要分離

結合具體的業務,用的多的字段單獨摘出來,可以減少查詢時候查詢到哪些不常用的字段造成查詢速度過慢

使用冗餘字段

有的時候表的不用分那麼細,比如乙個論壇,他要展示各個模組每天新發的帖子數量,可以在表中直接新增乙個字段用來記錄數量,雖然這個字段可能和其他的表冗餘,但是在查詢的過程中就不需要查其他表,增強了效能。

字段型別的優先順序

按照如下的優先順序

整型》date,time>enum,char>varchar>blob,text
列的特點:

型別特點

整型定長,沒有國家地域之分,不用考慮字符集

比如 1,2,3,4 和 a,b,c,d,後者在排序的時候要去考慮字符集和校對集 ,所以就會比較慢

time

定長,運算快,但是sql寫起來不方便

enum

列舉型別,能約束值,但是在和char進行連查的時候要經歷,串和值的轉化

char

定長,要考慮字符集和校對集

varchar

不定長,要考慮字符集和校對集,速度慢

text/blob

無法使用記憶體臨時表,(排序操作只能在磁碟上進行)

欄位在設計的時候越短越好

越長,計算的時候消耗的記憶體空間就越大,所以要盡量的小

能不用null就別用

字段允許為null,在索引的時候就需要特殊的標記,消耗效能。

mysql資料庫優化索引 mysql資料庫索引調優

一 mysql索引 1 磁碟檔案結構 innodb引擎 frm格式檔案儲存表結構,ibd格式檔案儲存索引和資料。myisam引擎 frm格式檔案儲存表結構,myi格式檔案儲存索引,myd格式檔案儲存資料 2 mysql資料庫資料範問原理 innodb btree 1 ibd檔案中主鍵構建b tree...

mysql資料庫優先 MySQL資料庫優化

1.新增索引 mysql資料庫的四類索引 index 普通索引,資料可以重複,沒有任何限制。unique 唯一索引,要求索引列的值必須唯一,但允許有空值 如果是組合索引,那麼列值的組合必須唯一。primary key 主鍵索引,是一種特殊的唯一索引,乙個表只能有乙個主鍵,不允許有空值,一般是在建立表...

mysql資料庫優化

用到啥學啥,mysql資料庫優化成了這幾天的老大難問題。瘋狂的尋找mysql優化的資料,覺得有用的不少,記錄下跟大家分享,對了,這裡僅僅是mysql資料庫本身的優化,沒有寫磁碟之類的 開始之前,介紹倆mysql的命令 show global status 檢視執行狀態的,顯示執行各種狀態值 show...