1.對(duì)于MySQL InnoDB表的二級(jí)索引是否加入主鍵,官方也有明確的說(shuō)明,建議線上MySQL的二級(jí)索引創(chuàng)建時(shí)強(qiáng)制加入主鍵所有的列,可以做到所有的MySQL 版本統(tǒng)一。
2.MySQL 5.6.9之前,InnoDB引擎層是會(huì)對(duì)二級(jí)索引做自動(dòng)擴(kuò)展,但是優(yōu)化器不能識(shí)別出擴(kuò)展的主鍵。
3.MySQL 5.6.9開(kāi)始InnoDB引擎層是會(huì)對(duì)二級(jí)索引做自動(dòng)擴(kuò)展,優(yōu)化器能識(shí)別出擴(kuò)展的主鍵。
4.索引的大小一樣,二級(jí)索引有沒(méi)有加入主鍵列,在InnoDB引擎層二級(jí)索引都會(huì)自動(dòng)擴(kuò)展主鍵,這個(gè)跟版本無(wú)關(guān)。
5.有無(wú)加入主鍵列,二級(jí)索引的組織結(jié)構(gòu)和物理大小是一樣,因?yàn)樵诖鎯?chǔ)引擎層面組織結(jié)構(gòu)是一樣的。
6.在優(yōu)化器層面,5.6.9之前是無(wú)法識(shí)別自動(dòng)擴(kuò)展的主鍵列,從5.6.9開(kāi)始優(yōu)化器的開(kāi)關(guān) use_index_extensions=on是可以識(shí)別擴(kuò)展的主鍵列,所以在二級(jí)索引加入主鍵列有有利的。這也可以做到與版本無(wú)關(guān),做到所有MySQL版本統(tǒng)一。
分享標(biāo)題:關(guān)于MySQLInnoDB表的二級(jí)索引是否加入主鍵的總結(jié)
文章位置:
http://weahome.cn/article/ipsehe.html