mysql 5 6分割槽維護

2021-12-29 22:24:16 字數 1249 閱讀 1527

mysql 5.6分割槽維護

表和分割槽的一些維護任務,適用於在mysql5.6的分割槽表上用sql語句進行。

維護分割槽表,可以使用支援分割槽表的語句:check table, optimize table, analyze table, and repair table

你可以使用alter table的一些擴充套件來執行這種型別的乙個或多個分割槽。如下:

1.重建分割槽: 這和先刪除儲存在分割槽中的所有記錄,然後重新插入它們,具有同樣的效果。它可用於整理分割槽碎片。如:

alter table t1 rebuild partition p0, p1;

2.優化分割槽:如果從分割槽中刪除了大量的行,或者對乙個帶有可變長度的行(也就是說,有varchar,blob,或text型別的列)作了許多修改,可以使用「alter table ... optimize partition」來收回沒有使用的空間,並整理分割槽資料檔案的碎片。如:

alter table t1 optimize partition p0, p1;

在乙個給定的分割槽表上使用「optimize partition」等同於在那個分割槽上執行check partition,analyze partition,和repair partition。

3.分析分割槽:讀取並儲存分割槽的鍵分布。如:

alter table t1 analyze partition p3;

4.修補分割槽: 修補被破壞的分割槽。如:

alter table t1 repair partition p0,p1;

5.檢查分割槽: 可以使用幾乎與對非分割槽表使用check table 相同的方式檢查分割槽。如:

alter table trb3 check partition p1;

這個命令可以告訴你表t1的分割槽p1中的資料或索引是否已經被破壞。如果發生了這種情況,使用「alter table ... repair partition」來修補該分割槽。

列表中每個語句也支援用關鍵字all 來替代列表中的分割槽名。如:

alter table trb3 check partition all;

使用 mysqlcheck 和 myisamchk 是不支援分割槽表的。

在mysql 5.6中你可以用alter table ... truncate partition來截斷分割槽。這個語句可以用來刪除乙個或多個分割槽中的所有行,和truncate table從表中刪除所有行的操作方式大致相同。

alter table ... truncate partition all 截斷表中所有的分割槽。

mysql 5 6 分割槽 四 分割槽和鎖定

在mysql 5.6.5及更早版本中,對於 myisam執行dml或ddl語句時,實際執行表級鎖的 儲存引擎 影響分割槽表的這種語句對整個 施加了鎖定 也就是說,所有分割槽都被鎖定,直到語句完成。mysql 5.6.6實現 分割槽鎖定修剪 這在許多情況下消除了不必要的鎖定。在mysql 5.6.6及...

MySQL 5 6分割槽表 入門例子講解

分割槽表是一種粗粒度,簡易的索引策略,適用於大資料的過濾場景.最適合的場景是,沒有合適的索引時,對其中幾個分割槽表進行全表掃瞄.或者只有乙個分割槽表和索引是熱點,而且這個分割槽和索引能夠全部儲存在記憶體中.限制單錶分割槽數不要超過150個,並且注意某些導致無法做分割槽過濾的細節,分割槽表對於單條記錄...

mysql5 6亂碼 mysql5 6亂碼

安裝mysql5.6版本遇到乙個問題,字符集亂碼,如下圖 由於是新安裝的本地資料庫,所以一定是配置的事情,查詢資料庫字符集配置,如下 有兩個是latin1的字符集,本人是window7環境,在網路找了很多資料,都顯示為修改 c program files mysql mysql server 5.6...