亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

mysql分區管理 - hash分區

系統 2685 0

hash分區的目的是將數據按照某列進行hash計算后更加均勻的分散到各個分區,相比,range和list分區來說,hash分區不需要明確指定一個給定的列值或者列值集合

應該在保存在哪個分區,mysql會自動按照hash計算后完成這些工作,我們只需要基于將要進行hash的列值指定一個列或者表達式,以及可選的指定要分區的表總的分區數量。

下面我們舉一個例子來說,hash分區如何創建。首先我們創建如下的表格:hash_partition_tbl,并插入幾條記錄到表中,如下所示:

mysql分區管理 - hash分區

我們也同時看一下,對應的表空間文件是如何分布的(注意,我們已經設置了innodb_file_per_table=1,即每個表單獨一個ibd文件),我們在對應的datadir目錄下可以看到:

由于我們是分成4個hash區,因此可以看到四個表空間文件,分別是hash_partition_tab#p#pi.ibd,i=0,1,2,3。

這里的hash分區的確定按照如下規則:

mod(YEAR(‘2012-05-01’),4) = mod (2012,4) = 0, 在分區p0;

mod(YEAR(‘2016-05-01’),4) = mod (2016,4) = 0, 在分區p0;

mod(YEAR(‘2010-05-01’),4) = mod (2010,4) = 2, 在分區p2;

mod(YEAR(‘2011-05-01’),4) = mod (2011,4) = 3, 在分區p3;

因此,我們認為 p0有2個記錄,p2和p3分別有1個記錄,p1記錄數為0,那么接下來我們通過查詢information_schema.PARTITIONS表來驗證。

mysql分區管理 - hash分區

之前我們知道range和list分區,如果表中存在primary key或者unique key,則對應分區的列必須是這些key的子集,那么對hash是否有同樣的約束呢,字符類型的列是否可以作為hash分區?接下來我們立刻以實驗為基礎進行驗證。

首先把之前的分區先刪除掉,執行如下命令:

mysql分區管理 - hash分區

發現drop partition命令只能用在RANGE和LIST分區中。

現在我們把a設置為unique key,如果成功,則說明hash分區允許非unique key 作為hash的列,執行如下:

mysql分區管理 - hash分區

說明: 如果將要分區的表有一個唯一的鍵,那么用來作為 HASH 用戶函數的自變數或者主鍵的 column_list 的自變數的任意列都必須是那個鍵的一部分。

下面試一下,字符串列是否可以作為hash分區的列,按照上面的討論和說明,我們認為是不行的,因為hash的計算本質是mod運算,必須是整數。實驗如下:

mysql分區管理 - hash分區

實驗證明:hash的分區必須是整數列。

可以通過下面的命令,進行重新分區:

alter table hash_partition_tbl partition by hash(a) partitions 4;







mysql分區管理 - hash分區


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久色网 | 九九在线视频 | 国产xxxx做受性欧美88 | 模特精品一区二区三区 | 看一级特黄a大片日本片 | 久久国产精品免费观看 | 国产精品久久久久久一区二区三区 | 亚洲七七久久精品中文国产 | 99久久精品国产综合一区 | 四虎b7s22c0m| 国产成人久久精品一区二区三区 | 日韩亚洲欧洲在线rrrr片 | 欧美人牲囗毛片 | 玖玖免费 | 777色狠狠一区二区三区香蕉 | 最新四虎4hu影库地址在线 | 丁香色综合| 欧美一级免费 | 国产精品欧美一区二区在线看 | 91成人啪国产啪永久地址 | 亚洲a成人| 国产三级久久久精品三级 | 精品中文字幕不卡在线视频 | 在线观看亚洲 | 色综合天 | 久久88香港三级台湾三级中文 | 在线看日本吃奶孕交 | 国产成人精品免费大全 | 成人 亚洲 | 九九精品久久久久久噜噜 | 日日干天天干 | 99久久精品无码一区二区毛片 | 亚洲a区视频 | 亚洲精品视频在线看 | 夜夜爱夜夜做夜夜爽 | 久热这里只精品99re8久 | 成人性一级视频在线观看 | 免费看片aⅴ免费大片 | 欧美在线观看一区二区 | 国产精品免费一区二区三区 | 国产婷婷色综合成人精品 |