在線客服系統(tǒng)
十三年專注于網(wǎng)站建設與互聯(lián)網(wǎng)應用開發(fā),低調(diào)、有情懷的網(wǎng)絡應用服務商!
南昌百恒科技微信公眾號 掃一掃關注
tel-icon全國服務熱線:400-680-9298,0791-88117053
掃一掃關注百恒科技微信公眾號

MySQL數(shù)據(jù)庫基本設計規(guī)范是什么?

百恒 2023-03-02 16:19:49 546
? ? ? ?MySQL是一種當下非常流行的關系型數(shù)據(jù)庫管理系統(tǒng)之一,由于其體積小、速度快、總體擁有成本低,以及開放源碼等特點,在廣大企業(yè)網(wǎng)站建設中做為網(wǎng)站數(shù)據(jù)庫的首要選擇,下面南昌網(wǎng)站建設開發(fā)公司百恒科技小編來跟大家聊一下MySQL數(shù)據(jù)庫基本設計規(guī)范是什么。


MySQL數(shù)據(jù)庫基本設計規(guī)范是什么


? ? ? ?1、所有表必須使用Innodb存儲引擎

? ? ? ?沒有特殊要求(即Innodb無法滿足的功能如:列存儲,存儲空間數(shù)據(jù)等)的情況下,所有表必須使用Innodb存儲引擎(mysql5.5之前默認使用Myisam,5.6以后默認的為Innodb)Innodb 支持事務,支持行級鎖,更好的恢復性,高并發(fā)下性能更好。

? ? ? ?2、數(shù)據(jù)庫和表的字符集統(tǒng)一使用UTF8

? ? ? ?兼容性更好,統(tǒng)一字符集可以避免由于字符集轉換產(chǎn)生的亂碼,不同的字符集進行比較前需要進行轉換會造成索引失效。

? ? ? ?3、所有表和字段都需要添加注釋

? ? ? ?使用comment從句添加表和列的備注, 從一開始即要進行數(shù)據(jù)字典的維護。

? ? ? ?4、盡量控制單表數(shù)據(jù)量的大小,建議控制在500萬以內(nèi)

? ? ? ?500萬并不是MySQL數(shù)據(jù)庫的限制,過大會造成修改表結構,備份,恢復都會有很大的問題;可以用歷史數(shù)據(jù)歸檔(應用于日志數(shù)據(jù)),分庫分表(應用于業(yè)務數(shù)據(jù))等手段來控制數(shù)據(jù)量大小。

? ? ? ?5、謹慎使用MySQL分區(qū)表

? ? ? ?分區(qū)表在物理上表現(xiàn)為多個文件,在邏輯上表現(xiàn)為一個表 謹慎選擇分區(qū)鍵,跨分區(qū)查詢效率可能更低 建議采用物理分表的方式管理大數(shù)據(jù)。

? ? ? ?6、盡量做到冷熱數(shù)據(jù)分離,減小表的寬度

? ? ? ?MySQL限制每個表蕞多存儲4096列,并且每一行數(shù)據(jù)的大小不能超過65535字節(jié) 減少磁盤IO,保證熱數(shù)據(jù)的內(nèi)存緩存命中率(表越寬,把表裝載進內(nèi)存緩沖池時所占用的內(nèi)存也會越大,也會消耗更多的IO) 更有效的利用緩存,避免讀入無用的冷數(shù)據(jù) 經(jīng)常一起使用的列放到一個表中(避免更多的關聯(lián)操作)。

? ? ? ?7、禁止在表中建立預留字段

? ? ? ?預留字段的命名很難做到見名識義 ,預留字段無法確認存儲的數(shù)據(jù)類型,所以無法選擇合適的類型 對預留字段類型的修改,會對表進行鎖定。

? ? ? ?8、禁止在數(shù)據(jù)庫中存儲圖片,文件等大的二進制數(shù)據(jù)

? ? ? ?通常文件很大,會短時間內(nèi)造成數(shù)據(jù)量快速增長,數(shù)據(jù)庫進行數(shù)據(jù)庫讀取時,通常會進行大量的隨機IO操作,文件很大時,IO操作很耗時 通常存儲于文件服務器,數(shù)據(jù)庫只存儲文件地址信息。

? ? ? ?9、禁止在線上做數(shù)據(jù)庫壓力測試

? ? ? ?10、禁止從開發(fā)環(huán)境,測試環(huán)境直接連接生成環(huán)境數(shù)據(jù)庫

? ? ? ?以上是南昌網(wǎng)站建設開發(fā)公司百恒科技小編要跟大家聊到的一些關于MySQL數(shù)據(jù)庫的基本設計規(guī)范,希望能夠對大家有所幫助,想要了解更多關于這方面的內(nèi)容,歡迎留言咨詢百恒科技,百恒科技是一家專業(yè)的南昌網(wǎng)站建設開發(fā)、南昌小程序開發(fā)公司!

?
相關文章推薦? ?:?? ? ? ? ? MySQL中trim函數(shù)的用法? ? ??

? ? ? ? ? ? ? ? ? ?linux下如何實現(xiàn)mysql數(shù)據(jù)庫每天自動備份定時備份?? ? ? ??
400-680-9298,0791-88117053
掃一掃關注百恒網(wǎng)絡微信公眾號

歡迎您的光顧,我們將竭誠為您服務×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務 售后服務
 
備案專線 備案專線
 
售后服務 售后服務
 
×