日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql 数据结构设计_MYSQL 设计数据结构需注意问题

發布時間:2023/12/15 数据库 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql 数据结构设计_MYSQL 设计数据结构需注意问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在設計數據結構時需要注意:

1、永遠為表設定一個自增主鍵ID,并盡可能的利用此ID進行構造

(在配置表中)盡可能的用上unsigned,并盡可能的小。能用tinyint(1字節)、smallint(2字節)、mediumint(3字節),就不用int(4)字節

2、盡可能的使用ENUM,比如性別,屬相等,因ENUM是保存為tinyint

3、盡可能的使用not null,除非業務需要使用null

4、把IP地址存為int unsigned ,使用 inet_aton() ?和 ?inet_ntoa() 來進行轉換

5、盡量使用短的字符類型

6、盡量使用固長的字符類型,當表中所有的字段都是固定長度,DB 會認為表是static類型,如果有固定長度和非固定長度的字段盡量采用垂直分割,將表分割。

靜態類型的表有以下特點:

a、非常快,由于是固定長度,DB很容易計算出下行的偏移量,所以讀取速度會很快,如果不是固定長度,要找到下行數據必須找到主鍵(這也是主鍵使用自增ID的重要的原因)

b、容易緩存

c、崩潰后容易重建,因為行是在固定位置

d、比變長需要更多的磁盤空間

e、一般不用優化,除非刪除了大量數據,采用optimize table 進行優化

7、垂直分割是把1張表的信息分割成幾張表,應注意以下幾點

a、盡量把固長和非固定長度的字段分離

b、經常使用和非經常使用的字段分離

c、頻繁更新和更新不頻繁的字段分離(比如登錄時間等),因為表的更新會釋放掉表的緩存,如果更新頻繁,基本上就用不上緩存。

d、拆分出去的字段,不能經常做join操作,否則性能比不拆分還要下降的多。

9、水平分割

a、設計時備份表和業務表進行分庫。這樣在做數據庫遷移、備份、恢復時往往會有比較好的效果

b、數據量很大的時候,可以將一張表的數據分發到小表中去,以提高插入,查詢的效率(比如原始數據的匯集)

8、選擇正確的存儲引擎

a、MYISAM 適合用在業務量小,更新操作不頻繁且不需要事務的應用

b、INNODB 使用在更新操作頻繁,需要事務的應用

收藏邀請

總結

以上是生活随笔為你收集整理的mysql 数据结构设计_MYSQL 设计数据结构需注意问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。