高效能mysql - Schema與資料類型最佳化

來源:互聯網
上載者:User

標籤:

MySQL支援的資料類型非常多,選擇正確的資料類型對於獲得高效能至關重要。
選擇資料類型的幾個原則
1、更小的通常更好
2、簡單就好,如使用date,time,datetime來儲存時間而不是字串

3、盡量避免NULL, 某個欄位如果計劃建索引,就應該盡量把這個欄位設計成NOT NULL

DATETIME 與 TIMESTAMP
TIMESTAMP 更小, 但是允許的時間範圍小。


整數類型
TINYINT 8位儲存空間,SMALLINT 16位儲存空間, MEDIUMINT 24位儲存空間,
INT 32位儲存空間, BIGINT 64位儲存空間

UNSIGNED 屬性,表示不允許負值,無符號的資料類型,可以使正數的上限提高1倍。

 

INT(1)和INT(20)只是在一些MySQL命令列用戶端的顯示有些不同,對於儲存和計算來說,INT(1)和INT(20)是一樣的。

VARCHAR節省儲存空間,但是當UPDATE時,需要做額外的工作。

CHAR適合儲存很短的字串,或者所有值都接近同一個長度,比如MD5值
對應經常變更的資料,CHAR也比VARCHAR更好,因為定長的CHAR不容易產生片段。
CHAR(1)和VARCHAR來儲存只有Y和N的值,CHAR(1)只需要1個位元組,VARCHAR(1)需要兩個位元組。

 

INT(1)和INT(20)只是在一些MySQL命令列用戶端的顯示有些不同,對於儲存和計算來說,INT(1)和INT(20)是一樣的。

高效能mysql - Schema與資料類型最佳化

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.