Row Migration and Row Chaining(行遷移和行連結)
Row Migration and Row Chaining(行遷移和行連結)
Row Migration(行遷移)
當記錄被更新時,原資料塊無法容納新的資料時,新的更新資料將遷移到別的資料塊中,而原資料塊的記錄保留並指向被遷移的資料塊。
Row Chaining(行連結)
(1)當行記錄大於資料塊的大小時,一個資料塊將無法容納,這時候,將加入新的資料塊直到能容納全部資料,資料塊之間就有連結關係。
(2)當表的定義超過255個欄位時,將產生塊內部的連結。
v$sysstat and v$sesstat
The idea is to check the statistic that gives the number of fetches that read more than one row piece (including intra-block chained rows), namely, [table fetch continued row].
this statistic could also be compared with [table scan rows gotten] and [table fetch by rowid].
select avg_row_len from dba_tables
ANALYZE TABLE
select * from chained_rows;
Row Migration解決方法:
1. 防止產生Row Migration:
增大pctfree
2. 清除Row Migration:
ALTER TABLE MOVE
或
將行遷移的資料匯入臨時表,然後再匯入
Row Chaining解決方法:
1. 對於塊內部的連結,減少表的欄位,或將很少使用的欄位放到後面;
2. 對於塊外部的連結,重新設計表,或增大資料塊的塊大小(Block size 2K, 4K, 8K, 16K, 32K)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13605188/viewspace-620328/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 遷移執行緒migration執行緒
- 模擬Oracle行遷移和行連結Oracle
- Oracle 行遷移 & 行連結的檢測與消除Oracle
- [20190120]行連結遷移與dml.txt
- [20180402]行連結行遷移與ITL槽6.txt
- Oracle資料庫中資料行遷移與行連結Oracle資料庫
- MySQL裡的found_row()與row_count()MySql
- ORACLE ROW MOVEMENTOracle
- A. Arrow a Row
- Oracle中rownum和row_number()Oracle
- MySQL Binlogging Fails With Writing One Row To The Row-based Binary Log FailedMySqlAI
- Flutter線性佈局Row和ColumnFlutter
- Flutter控制元件--Row、Column和StackFlutter控制元件
- Laravel migration (資料庫遷移) 的使用Laravel資料庫
- 雲資料遷移(Cloud Data Migration,CDM)Cloud
- #1118 - Row size too large. The maximum row size for the used table type, not counting BLOBs
- enq: TX - row lock contentionENQ
- 【MySQL】你所不知道的行復制(binlog_format=row)MySqlORM
- flutter佈局-2-rowFlutter
- 623-Add One Row to Tree
- Flutter 之 Row、Column詳解Flutter
- 使用Mobilenet和Keras進行遷移學習!Keras遷移學習
- Oracle vs PostgreSQL Develop(19) - PIPE ROWOracleSQLdev
- 等待事件enq: TX - row lock contention事件ENQ
- PostgreSQL DBA(102) - pgAdmin(Row Level Security)SQL
- InnoDB從內分析之Row(一)
- Flutter之Row/Column用法詳解Flutter
- MySQL8.0 binlog_row_metadataMySql
- Flutter基礎元件Row&ColumnFlutter元件
- MySQL:Innodb 讓MDL LOCK和ROW LOCK 記錄到errlogMySql
- 1.5 使用nvicat和kettle進行全量遷移
- Flutter 佈局(七)- Row、Column詳解Flutter
- 奇異的enq: TX - row lock contentionENQ
- 515-Find Largest Value in Each Tree Row
- Hive ROW_NUMBER,RANK(),DENSE_RANK()Hive
- 關於hibernate的 No row with the given identifier existsIDE
- sql中row_number over語句SQL
- Hive的row_number和regexp_extract結合帶來的亂碼問題Hive
- 鴻蒙HarmonyOS實戰-ArkUI元件(Row/Column)鴻蒙UI元件