日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用OPTIMIZE TABLE命令或DMS工具回收表空間

使用DELETE語句刪除數據時,只是將記錄的位置或者數據頁標記為可復用,但是存儲空間中文件的大小不會改變,即表空間不會直接被回收。此時,您可以通過執行OPTIMIZE TABLE命令或DMS工具來回收表空間。

使用DMS工具或OPTIMIZE TABLE命令均可以回收表空間,兩種方式的各自特點如下表所示。通常情況下,在業務低峰期且希望執行效率高時,可以優先選擇使用OPTIMIZE TABLE命令來回收表空間。若您希望盡可能地降低對集群負載的影響且對執行效率不敏感時,可以優先選擇使用DMS工具來回收表空間。

回收表空間的方式

對比項

是否允許并發讀寫

執行速度

是否支持限流

通過OPTIMIZE TABLE命令回收表空間

通過DMS回收表空間

說明

如需了解更多關于回收表空間的內容,請搜索釘釘群號加群進行咨詢。釘釘群號:15375044501。

前提條件

集群的數據庫引擎為InnoDB,且表中不包含全文索引。

注意事項

  • 當目標表的碎片率較低時,執行OPTIMIZE TABLE命令不能顯著降低表空間大小。您可以通過information_schema.tables中的DATA_FREE字段來查看目標表的碎片率。

  • 執行OPTIMIZE TABLE語句時,表數據會復制到新建的臨時表中,會臨時增加集群的存儲空間使用率。

  • 對于不包含全文索引的表,OPTIMIZE TABLE語句使用Online DDL方式執行,允許并發讀寫。

  • 對大表執行OPTIMIZE TABLE操作會帶來突發的IO和Buffer使用量,可能會導致鎖表和搶占資源,在業務高峰期執行該操作可能會導致集群不可用以及監控斷點。建議在業務低峰期執行該操作。

操作步驟

通過OPTIMIZE TABLE命令回收表空間

  1. 連接數據庫集群

  2. 執行以下命令,回收表空間。

    OPTIMIZE TABLE [$Database1].[Table1],[$Database2].[Table2]

    其中,[$Database1]和[$Database2]為數據庫名稱,[Table1]和[Table2]為表名。

    在InnoDB引擎中執行OPTIMIZE TABLE語句時,會出現以下提示信息,該信息是正常返回的結果,您可以忽略該信息,確認返回ok即可。關于更多OPTIMIZE TABLE語句的詳細信息請參見OPTIMIZE TABLE Statement。

    Table does not support optimize, doing recreate + analyze instead

通過DMS回收表空間

  1. 登錄PolarDB控制臺。
  2. 在控制臺左上角,選擇集群所在地域。
  3. 找到目標集群,單擊集群ID。
  4. 單擊頁面右上角的登錄數據庫。

  5. 在左側選擇目標集群ID,雙擊目標庫,右鍵單擊任意表名,然后選擇批量操作表

    image.png

  6. 勾選需要釋放空間的表名,選擇表維護>優化表

    image.png

  7. 在彈出的優化表對話框中,確認優化信息無誤后,單擊確認。