Oracle表碎片查詢以及整理(高水位線)

2021-08-20 01:15:33 字數 900 閱讀 2346

oracle表碎片查詢以及整理(高水位線)

sql> alter table table_name enable 

row movement;

--啟動行移動功能

sql> alter table table_name shrink space compact;  --只整理碎片 不**空間

-- 重置高水位,此時不能有dml操作

sql> alter table table_name shrink space; --

整理碎片並**空間

,並調整水位線

。業務少時執行

sql> alter table table_name disable row movement;--關閉行移動

注意:segment shrink執行的兩個階段:

1、資料重組(compact):

通過一系列insert、delete操作,將資料盡量排列在段的前面。在這個過程中需要在表上加rx鎖,即只在需要移動的行上加鎖。

由於涉及到rowid的改變,需要enable row movement.同時要disable基於rowid的trigger.這一過程對業務影響比較小。

2、hwm調整:第二階段是調整hwm位置,釋放空閒資料塊。

此過程需要在表上加x鎖,會造成表上的所有dml語句阻塞。在業務特別繁忙的系統上可能造成比較大的影響。

注意:shrink space語句兩個階段都執行。

shrink space compact只執行第乙個階段。

如果系統業務比較繁忙,

可以先執行shrink space compact重組資料,然後在業務不忙的時候再執行shrink space降低hwm釋放空閒資料塊。

ORACLE表空間碎片整理

oracle作為一種大型資料庫,廣泛應用於金融 郵電 電力 民航等資料吞吐量巨大,計算機網路廣泛普及的重要部門。對於系統管理員來講,如何保證網路 穩定執行,如何提高資料庫效能,使其更加安全高效,就顯得尤為重要。作為影響資料庫效能的一大因素 資料庫碎片,應當引起dba的足夠重視,及時發現並 整理碎片乃...

Oracle 碎片整理

我們知道,oracle作為一種大型資料庫,廣泛應用於金融 郵電 電力 民航等資料吞吐量巨大,計算機網路廣泛普及的重要部門。對於系統管理員來講,如何保證網路穩定執行,如何提高資料庫效能,使其更加安全高效,就顯得尤為重要。作為影響資料庫效能的一大因素 資料庫碎片,應當引起dba的足夠重視,及時發現並整理...

mysql表碎片整理

1.首先檢視下表碎片資訊 其中 table schema指的是庫名,table name指的是表名,engine指的是儲存引擎,table rows指的是表裡存在行數,length指的是表和索引的總大小,data free指的是碎片大小 位元組 2.對於myisam儲存引擎使用的表,清理命令為 op...