陳昌政
0前言MySQL8.0開始支持隱藏索引,不可見索引。它允許快速啟用/禁用MySQLOptimizer使用的索引。
隱藏索引不會(huì)被優(yōu)化器使用,但仍需維護(hù)
1應(yīng)用場景軟刪除灰度發(fā)布,測試新索引:在不影響現(xiàn)有查詢性能的情況下,測試新創(chuàng)建的索引是否有效維護(hù)索引:在更新或重建索引時(shí),可以先將其設(shè)置為不可見,避免影響在線查詢臨時(shí)禁用無用索引:如果某個(gè)索引不再被頻繁使用,可以將其設(shè)置為不可見,減少不必要的開銷2啥用?若想刪除一個(gè)索引,又想事先知道效果??墒顾鼘?yōu)化程序不可見。這是一個(gè)快速的元數(shù)據(jù)更改,使索引不可見。一旦確定沒有性能下降,就可真正去刪除索引。
關(guān)鍵:隱藏索引不能供優(yōu)化器使用,但它仍存在,并通過寫入操作保持最新。即便嘗試“FORCEINDEX”,優(yōu)化器也不會(huì)用它,雖然我認(rèn)為我們應(yīng)該能在某種程度強(qiáng)制它??赡軙?huì)有這樣情況:
可創(chuàng)建一個(gè)新的隱形索引,但若想測試它,須使它可見。即所有對應(yīng)用程序有即時(shí)影響的查詢都將能用它。若目的只是想測試它,我不認(rèn)為這是最好方法,不是所有人的服務(wù)器都有相同的數(shù)據(jù)大小和真實(shí)數(shù)據(jù)。強(qiáng)制隱藏索引這時(shí)可能會(huì)很有用。
你有許多索引,但不確定哪個(gè)未使用。可將一個(gè)索引更改為不可見,以查看是否存在任何性能下降。若是,你可立即更改。
可能有個(gè)特殊情況:只有一個(gè)查詢可用該索引。此時(shí),隱藏索引可能是很好解決方案。
3創(chuàng)建有兩個(gè)選項(xiàng):
3.1創(chuàng)建一個(gè)具有隱藏索引的表CREATETABLEt1(iINT,jINT,kINT,INDEXi_idx(i)INVISIBLE)ENGINE=InnoDB;CREATEINDEXj_idxONt1(j)INVISIBLE;3.2altertable并將索引更改為隱藏ALTERTABLEt1ADDINDEXk_idx(k)INVISIBLE;4使用如果我們現(xiàn)在要?jiǎng)h除索引,我們可以將其更改為隱藏。但是使用“FORCE/USEINDEX”的查詢怎么樣?他們是否會(huì)拋出一個(gè)錯(cuò)誤?如果強(qiáng)制不存在的索引,你會(huì)收到錯(cuò)誤。你不會(huì)看到隱藏索引的錯(cuò)誤。優(yōu)化器不會(huì)使用它,但知道它存在。
大型表上,這可能導(dǎo)致嚴(yán)重性能問題。即使MySQL在查詢執(zhí)行期間不拋任何錯(cuò)誤,它也應(yīng)在錯(cuò)誤日志中記錄一個(gè)警告。
百看不厭型的高評價(jià)小說《下山?那我可就無敵了》,劇情超爽熬夜看...
今日推薦:《下山?那我可就無敵了》作者:小五很厲害|——。點(diǎn)擊文末超鏈接開始觀看吧~第544章以命換命徐瑞夫婦都傻了,不敢收,最后還是在楚不凡的勸說下收了,臨走之前楚不凡還叮囑馮墨,沒事兒來面館吃碗面,也算是間接的保護(hù)徐瑞||。等天府的人走了,楚不凡這才帶著琥珀走出飯館|_。神魂展開,楚不凡立馬發(fā)后面會(huì)介紹|——。
小說:被囚昆侖十年,下山我已無敵,斬盡世間敵手!
《下山?那我可就無敵了》,為啥牢牢霸榜網(wǎng)文榜多年?那是因?yàn)槟懔私獠粔蚨嘟袢胀扑]:《下山?那我可就無敵了》作者:小五很厲害-——。點(diǎn)擊文末超鏈接開始觀看吧~第288章金狼門楚不凡驚訝道:“你們金狼門挺強(qiáng)啊,你一個(gè)殺手實(shí)力都在內(nèi)勁巔峰||?!薄案鶕?jù)情報(bào),您的實(shí)力很強(qiáng),所以狼王才派我來的——-?!鼻嗬堑赖葧?huì)說。
《下山?那我可就無敵了》:百年輝煌,從他手中開始崛起!
楚不凡坐下后,沖著李春生幾人道:“幾位麻煩了,既然事情已經(jīng)明了了,就請回吧|_?!薄安宦闊?,不麻煩,我們現(xiàn)在就走?!崩畲荷s忙道。他知道剩下的事不是自己這些人能摻和的了,抓緊離開才是對-?!皩α耍裉彀l(fā)生的事……”楚不凡看向李春生?!澳判?,今天的事我們不會(huì)對外面的人多說半句!”說著,..
來源:紅網(wǎng)
作者:南浦和
編輯:陳惠如
本文為紅辣椒評論 原創(chuàng)文章,僅系作者個(gè)人觀點(diǎn),不代表紅網(wǎng)立場。轉(zhuǎn)載請附原文出處鏈接和本聲明。