亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MYSQL數據庫表結構優化方法詳解

發布時間:2020-10-19 04:57:42 來源:腳本之家 閱讀:172 作者:人生如初見_張默 欄目:MySQL數據庫

本文實例講述了MYSQL數據庫表結構優化方法。分享給大家供大家參考,具體如下:

 選擇合適的數據類型

    1、使用可以存下你的數據的最小的數據類型

    2、使用簡單的數據類型。Int要比varchar類型在mysql處理上簡單

    3、盡可能的使用not null定義字段

    4、盡量少用text類型,非用不可時最好考慮分表

使用int來存儲日期時間,利用FROM_UNIXTIME()【將int類型時間戳轉換成日期時間格式】,UNIX_TIMESTAMP()【將日期時間格式轉換成int類型】兩個函數進行轉換

使用bigint來存儲IP地址,利用INET_ATON()【將IP格式轉換成int】,INET_NTOA()【將int格式轉換成正常IP格式】兩個函數進行轉換

表的范式化和反范式化

范式化是指數據庫設計的規范,目前的范式化一般指第三設計范式,也就是要求數據表中不存在非關鍵字段對任意候選關鍵字段

的傳遞函數依賴則符合第三范式。

MYSQL數據庫表結構優化方法詳解

不符合第三范式要求的表存在下列問題:

    1、數據冗余:(分類,分類描述)對于每一個商品都會進行記錄

    2、數據的插入/更新/刪除異常

范式化操作:

MYSQL數據庫表結構優化方法詳解

反范式化是指為了查詢效率和考慮把原本符合第三范式的表適當的增加冗余,以達到優化查詢效率的目的,反范式化是一種以空間來換取時間的操作。

例:

MYSQL數據庫表結構優化方法詳解

MYSQL數據庫表結構優化方法詳解   

對表進行反范式化

MYSQL數據庫表結構優化方法詳解

反范式化查詢訂單信息:

MYSQL數據庫表結構優化方法詳解

表的垂直拆分

   垂直拆分就是把原來 很多列的表拆分成多個表,這就解決了表的寬度問題。通常垂直拆分可以按以下原則進行:

        1、把不常用的字段單獨存放到一個表中。

        2、把大字段獨立存放到一個表中。

        3、把經常一起使用的字段放到一起。

水平拆分

    表的水平拆分是為了解決單表的數據量過大問題,水平拆分的表每個表的結構都是完全一致的

MYSQL數據庫表結構優化方法詳解

 常用的水平拆分方法:

    1、對customer_id進行hash運算,如果要拆分成5個表則使用mod(custoneer_id,5)取出0-4個值

    2、針對不同的hashID把數據存到不同的表中

更多關于MySQL相關內容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數大匯總》、《MySQL日志操作技巧大全》、《MySQL事務操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數據庫鎖相關技巧匯總》

希望本文所述對大家MySQL數據庫計有所幫助。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄢陵县| 峡江县| 疏勒县| 涪陵区| 讷河市| 石楼县| 方正县| 大城县| 彩票| 安塞县| 富平县| 耒阳市| 靖西县| 汶上县| 东海县| 洛南县| 龙山县| 泗洪县| 泾川县| 内乡县| 英吉沙县| 桐柏县| 弥渡县| 阿巴嘎旗| 隆德县| 景东| 宁化县| 靖边县| 乌鲁木齐县| 临澧县| 河池市| 青川县| 綦江县| 将乐县| 平顶山市| 应用必备| 晋中市| 白水县| 绥阳县| 兴山县| 根河市|