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

MySQL數(shù)據(jù)庫索引設(shè)計(jì)規(guī)范是什么?

百恒 2023-03-04 16:35:20 562
? ? ? ?MySQL是很多網(wǎng)站建設(shè)中作為網(wǎng)站數(shù)據(jù)庫的選擇,由于MySQL 是開源的,所以你不需要支付額外的費(fèi)用,因此被很多網(wǎng)絡(luò)開發(fā)公司所熱衷,下面南昌網(wǎng)站建設(shè)開發(fā)公司百恒科技小編來跟大家聊一下MySQL數(shù)據(jù)庫索引設(shè)計(jì)規(guī)范是什么。


MySQL數(shù)據(jù)庫索引設(shè)計(jì)規(guī)范是什么


? ? ? ?1、限制每張表上的索引數(shù)量,建議單張表索引不超過5個(gè)

? ? ? ?索引并不是越多越好!索引可以提升效率同樣可以降低效率。

? ? ? ?索引可以增加查詢效率,但同樣也會(huì)降低插入和更新的效率,甚至有些情況下會(huì)降低查詢效率。

? ? ? ?因?yàn)閙ysql優(yōu)化器在選擇如何優(yōu)化查詢時(shí),會(huì)根據(jù)統(tǒng)一信息,對每一個(gè)可以用到的索引來進(jìn)行評估,以生成出一個(gè)蕞好的執(zhí)行計(jì)劃,如果同時(shí)有很多個(gè)索引都可以用于查詢,則會(huì)增加mysql優(yōu)化器生成執(zhí)行計(jì)劃的時(shí)間,同樣會(huì)降低查詢性能。

? ? ? ?2、禁止給表中的每一列都建立單獨(dú)的索引

? ? ? ?5.6版本之前,一個(gè)sql只能使用到一個(gè)表中的一個(gè)索引,5.6以后,雖然有了合并索引的優(yōu)化方式,但是還是遠(yuǎn)遠(yuǎn)沒有使用一個(gè)聯(lián)合索引的查詢方式好。

? ? ? ?3、每個(gè)Innodb表必須有個(gè)主鍵

? ? ? ?Innodb是一種索引組織表:數(shù)據(jù)的存儲的邏輯順序和索引的順序是相同的。

? ? ? ?每個(gè)表都可以有多個(gè)索引,但是表的存儲順序只能有一種 Innodb是按照主鍵索引的順序來組織表的。

? ? ? ?不要使用更新頻繁的列作為主鍵,不適用多列主鍵(相當(dāng)于聯(lián)合索引) 不要使用UUID、MD5、HASH、字符串列作為主鍵(無法保證數(shù)據(jù)的順序增長)。

? ? ? ?主鍵建議使用自增ID值。

? ? ? ?以上是南昌網(wǎng)站建設(shè)開發(fā)公司百恒科技小編要跟大家聊到的一些關(guān)于MySQL數(shù)據(jù)庫索引設(shè)計(jì)規(guī)范的內(nèi)容,希望能夠?qū)Υ蠹矣兴鶐椭胍私飧嚓P(guān)于這方面的內(nèi)容,歡迎留言咨詢百恒科技,百恒科技是一家有著16年豐富經(jīng)驗(yàn)的專業(yè)網(wǎng)絡(luò)開發(fā)公司,專注于南昌網(wǎng)站建設(shè)開發(fā)、南昌小程序開發(fā)等互聯(lián)網(wǎng)服務(wù)!


相關(guān)文章推薦? ?:? ? MySQL數(shù)據(jù)庫字段設(shè)計(jì)規(guī)范是什么?? ??

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?MySQL數(shù)據(jù)庫基本設(shè)計(jì)規(guī)范是什么?? ??
400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號

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

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
售后服務(wù) 售后服務(wù)
 
×