Oracle pctfree 和 pctused
pctfree 這個引數定義了一個塊保留空間的百分比,保留空間是為將來可能發生的更新操作,因為更新可能增大被更新行佔用的空間,如果此時此刻沒有可利用空間,那麼只有發生row migrate(行遷移),從而會降低I/O效能。 換句話說,當一個塊利用率達到 1-pctfree 的時候,oracle 就將該塊從freelist中移除,不再向該塊插入資料。 所以說pctfree 是控制什麼時候將塊從freelist中移除的。
pctused 這個引數控制一個塊什麼時候被重新啟用來插入資料,例如當一個塊達到1-pctfree 利用率的時候,oracle 停止向該塊插入資料,同時從freelist移除該塊,但是後來發生一些delete 操作,使得該塊的利用率下降,當該塊的利用率降到pctused以下的時候該塊就被重新啟用來插入資料,也就是將該塊重新加入到freelist列表中, 所以說pctused 是控制什麼時候將一個塊重新加入到freelist的。
例如: 一個塊的pctfree定為10%, pctused 定為40%(oracle 預設設定)。那麼一個塊使用率達到90%的時候,oracle 將該塊從freelist中移除,停止使用該塊來插入資料(可更新)。 後來該塊上發生了delete 操作,使得該塊的利用率下降,當使用率下降到40%以下的時候,oracle 重新將改塊加入freelist, 可用於新的插入。
注意:
PCTFREE 和 PCTUSED 的值可以在建立表時指定,也可以在建立表後修改,但是要注意的是,修改後的值,只對修改後的資料操作有影響,對之前的無效。 因為OLTP系統對資料塊的DML操作較為頻繁,所以在OLTP系統中正確配置這兩個屬性可能會對效能有一定提高。
Oracle11g中,表空間預設使用本地點陣圖自動管理, PCTFREE的預設值為10, 且無法自定義管理PCTUSED屬性,除非將表空間設定為手動管理。
-- Create table
create table TEST
(
ID INTEGER,
NAME VARCHAR2(20)
)
tablespace USERS
pctfree 10
initrans 1
maxtrans 255;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21374452/viewspace-2882923/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- [20210315]ORA-04000 the sum of PCTUSED and PCTFREE cannot exceed 100.txt
- oracle exp和impOracle
- Oracle和Mysql遞迴OracleMySql遞迴
- oracle的redo和undoOracle
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.3. Oracle net配置OracleLinux
- 4.3 Oracle Restart元件實現oracle啟動和停止OracleREST元件
- 11. Oracle for Linux安裝和配置—11.3. Oracle安裝和配置—11.3.1. Oracle軟體安裝OracleLinux
- MySQL和Oracle的區別MySqlOracle
- Oracle和MySQL的區別OracleMySql
- oracle和sqlserver互訪(轉)OracleSQLServer
- oracle和mybatis整合,批次插入OracleMyBatis
- Oracle Data Guard和Broker概述Oracle
- oracle 註釋和約束Oracle
- oracle中的CURRVAL和NEXTVAL用法Oracle
- Oracle OCP(02):條件和排序Oracle排序
- ORACLE中%TYPE和%ROWTYPE的使用Oracle
- Oracle中的for update 和 for update nowaitOracleAI
- Oracle和JDE日曆轉換Oracle
- mysql和oracle計劃任務MySqlOracle
- Oracle和MySQL md5加密OracleMySql加密
- 關於Oracle的BLOB和CLOBOracle
- Oracle中rownum和row_number()Oracle
- 【TUNE_ORACLE】Oracle資料庫與HugePages(二)HugePages配置和限制Oracle資料庫
- Oracle中Date和Timestamp的區別Oracle
- ORACLE打補丁的方法和案例Oracle
- Oracle dba角色和sysdba的區別Oracle
- Oracle Linux 7.5下載和安裝OracleLinux
- Oracle 備份和恢復介紹Oracle
- oracle中distinct和group by的區別Oracle
- Oracle建立使用者和授權Oracle
- Oracle中exists和in的效能差異Oracle
- RU 和 RUR oracle補丁說明Oracle
- Oracle 21C OCR和OLR管理Oracle
- ORACLE常見檢視和表整理Oracle
- Oracle 和 mysql的9點區別OracleMySql
- 系統管理指南:Oracle Solaris Containers-資源管理和 Oracle Solaris ZonesOracleAI
- 【ASK_ORACLE】Oracle Data Guard(二)物理備庫的概念和優勢Oracle
- 【ASK_ORACLE】Oracle Data Guard(四)快照備庫的概念和優勢Oracle