本篇文章給大家?guī)?lái)的內(nèi)容是關(guān)于mysql 建立分區(qū)的兩種方式介紹(代碼示例),有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你有所幫助。
#list分區(qū)–鍵值通過(guò)自定義的list來(lái)確定寫(xiě)入到哪個(gè)分區(qū)中。?? ?
優(yōu)勢(shì):支持int,時(shí)間,varchar等值 ?
劣勢(shì):需要自己寫(xiě)相應(yīng)數(shù)據(jù)的從屬(寫(xiě)入或者查詢到哪個(gè)分區(qū)),即后期若分區(qū)條件修改需要再配置。
CREATE?TABLE?t_test?( ????unid?INT?auto_increment?,? ????uuid?VARCHAR(36), ????cdate?datetime, ????type?int, ????????text?varchar(30), ????????PRIMARY?KEY(unid,type) ) PARTITION?BY?LIST?COLUMNS(type)?(????????#這里以type字段來(lái)分區(qū),list分區(qū)中,這個(gè)字段可以為int整形或者某個(gè)值 ????PARTITION?pRegion_1??VALUES?IN?(1),?????#這里的意思是,當(dāng)type=1時(shí),數(shù)據(jù)會(huì)寫(xiě)入到pRegion_1分區(qū)中 ????PARTITION?pRegion_2??VALUES?IN?(2),?????#同上 ????PARTITION?pRegion_3??VALUES?IN?(3), ????PARTITION?pRegion_4??VALUES?IN?(4) );
#hash分區(qū)–鍵值通過(guò)hash算法計(jì)算后,自動(dòng)寫(xiě)入到相應(yīng)的分區(qū)中 。
優(yōu)勢(shì):不需要自己寫(xiě)相應(yīng)數(shù)據(jù)的從屬(寫(xiě)入或者查詢到哪個(gè)分區(qū))
?劣勢(shì):只支持int整型
CREATE?TABLE?t_test?( ????unid?INT?auto_increment?, ????uuid?VARCHAR(36), ????cdate?datetime, ????type?int, ????text?varchar(30), ????PRIMARY?KEY(unid,type)???????#復(fù)合主鍵,因?yàn)楹竺嬉胻ype字段來(lái)分區(qū) ) PARTITION?BY?HASH?(?type?)???#這里以type字段來(lái)分區(qū),type必須是主鍵或者是復(fù)合主鍵包含的字段,hash分區(qū)的方式必須該字段為int PARTITIONS?10;??????????????#這里設(shè)定的是分區(qū)數(shù)為10,數(shù)據(jù)會(huì)通過(guò)type字段經(jīng)過(guò)hash算法后,自動(dòng)歸屬到10個(gè)分區(qū)中的某個(gè)分區(qū)中
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載。
THE END