檢查行遷移的方法

2022-07-19 16:09:19 字數 845 閱讀 7199

檢查行遷移的方法:

1) 執行$oracle_home/rdbms/admin/utlchain.sql

2) analyze table table_name list chained rows into chained_rows

3) select * from chained_rows where table_name='table_name';

清除的方法:

方法1:create table table_name_tmp as select * from table_name where rowed in (select head_rowid from chained_rows);

delete from table_name where rowed in (select head_rowid from chained_rows);

insert into table_name select * from table_name_tmp;

方法2:create table table_name_tmp select * from table_name ;

truncate table table_name

insert into table_name select * from table_name_tmp

方法3:用exp工具匯出表,然後刪除這個表,最後用imp工具匯入這錶

方法4:alter table table_name move tablespace tablespace_name,然後再重新表的索引

上面的4種方法可以用以消除已經存在的行遷移現象,但是行遷移的產生很多情況下時由於pct_free引數設定的太小所導致,所以需要調整pct_free引數的值

檢查行遷移的方法

檢查行遷移的方法 1 執行 oracle home rdbms admin utlchain.sql 2 analyze table table name list chained rows into chained rows 3 select from chained rows where tab...

mysql有行遷移嗎 行連線 行遷移

1.檢測行遷移和行連線 select value from v sysstat where name table fetch continued row 上面反回的是由語句訪問的鏈結行的數量。2.獲得表的鏈結行的數目 分析表 analyze table owner.table name comput...

行鏈結與行遷移

行遷移 行遷移一般產生在更新操作中,當更新操作導致行長增加了,而block的自由空間已經沒有,這時oracle把整行記錄遷移到乙個新的block中,並在原來block中存放新block的鏈結,行遷移產生。2.行鏈結與行遷移的檢測 1 建立chained rows表 利用oracle資料庫自身提供的指...