Oracle exp中compress引數的影響測試
Oracle exp 中 compress 引數的影響測試
1 建立表時 initial 預設為 64K ,手動設定為 5M ;
SQL> create table t1(id number) storage(initial 5m);
2 沒有 T1 的相關資料
SQL> select segment_name,bytes,initial_extent from user_segments;
原因: 在沒有插入資料時,不會分配空間,在使用者段中也查詢不到,這是 11g 的新功能,延時段分配;
3 插入資料
SQL> insert into t1 values(1);
SQL> COMMIT;
4 t1 表所佔空間為 5M ,初始值 5M
SQL> select segment_name,bytes,initial_extent from user_segments;
T1(bytes=5242880,initial_extent=5242880)
5 清空表
SQL> truncate table t1;
6 t1 表所佔空間變成 initial 初始值 5M
SQL> select segment_name,bytes,initial_extent from user_segments;
T1(bytes=5242880,initial_extent=5242880)
SQL> select 5242880/1024/1024 from dual; ---5M
清空表後,t1 仍然佔有5M 的空間,即初始區分配的大小
7 更改 initial 引數
SQL> alter table t1 move storage(initial 64K);
SQL> select segment_name,bytes,initial_extent from user_segments;
T1( bytes=65536 ,initial_extent=65536)
8 插入資料
SQL> insert into t1 select level as id from dual connect by level<=100;
9 t1 表所佔空間為 64K
SQL> select segment_name,bytes,initial_extent from user_segments;
T1(bytes=65536,initial_extent=65536)
因為插入的資料很小,不足64K ,所以區的個數沒有增加
10 清空表 t1
SQL> truncate table t1;
SQL> select segment_name,bytes,initial_extent from user_segments;
T1(bytes=65536,initial_extent=65536)
11 插入大量資料
SQL> insert into t1 select level as id from dual connect by level<=1000000;
12 查詢 , 表 t1 所佔空間 13M ,區擴充套件 28 個
SQL> select segment_name,bytes,initial_extent from user_segments;
T1(bytes=13631488,initial_extent=65536,extents=28)
select 13631488/1024/1024 from dual;---13M
13 exp 匯出 t1( 不指定 compress 引數,則預設 Y)
[oracle11@back ~]$ exp chen/chen file=a.dmp tables=t1
......
About to export specified tables via Conventional Path ...
. . exporting table T1 1000000 rows exported
Export terminated successfully without warnings.
......
14 匯入
SQL> show user
USER is "CHEN"
SQL> drop table t1 purge;
[oracle11@back ~]$ imp chen/chen file=a.dmp fromuser=chen touser=chen ignore=y
......
. importing CHEN's objects into CHEN
. . importing table "T1" 1000000 rows imported
Import terminated successfully without warnings.
......
SQL> col segment_name for a25
SQL> select segment_name,bytes,initial_extent,EXTENTS from user_segments;
SEGMENT_NAME BYTES INITIAL_EXTENTS EXTENTS
------------------------- ---------- -------------- -------
T1 13631488 13631488 1
.....
10 rows selected.
匯入後表 t1 的 初始值 自動變成所有區的 總和 , 區由 28 個變成1 個 ,也就是將 28 個區壓縮成一個區 ,這是由於 compress=Y 引數引起的。
compress=Y 主要目的是 為了消除儲存碎片 ,以保證某張表的所有記錄都儲存在連續的空間裡。
但是負面效應很明顯,且自 oracle9i 開始,使用了本地管理的表空間,儲存碎片的問題應該比低版本好多了。
15 更改 t1 初始值為 64K
SQL> alter table t1 move storage(initial 64k);
SQL> select segment_name,bytes,initial_extent from user_segments;
SEGMENT_NAME BYTES INITIAL_EXTENT
------------------------- ---------- --------------
T1 13631488 65536
......
10 rows selected.
16 重新匯出匯入 , 指定 compress=n
[oracle11@back ~]$ rm -rf a.dmp
[oracle11@back ~]$ exp chen/chen file=a.dmp tables=t1 compress=n
......
About to export specified tables via Conventional Path ...
. . exporting table T1 1000000 rows exported
Export terminated successfully without warnings.
......
SQL> drop table t1 purge;
[oracle11@back ~]$ imp chen/chen file=a.dmp fromuser=chen touser=chen ignore=y
......
. importing CHEN's objects into CHEN
. . importing table "T1" 1000000 rows imported
Import terminated successfully without warnings.
......
17 匯出時取消壓縮 (compress=N), 初始值和區的個數不變
SQL> select segment_name,bytes,initial_extent from user_segments;
SEGMENT_NAME BYTES INITIAL_EXTENT EXTENTS
------------------------- ---------- -------------- -------
T1 13631488 65536 28
......
10 rows selected.
歡迎關注我的微信公眾號"IT小Chen",共同學習,共同成長!!!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29785807/viewspace-1775132/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- EXP匯出引數compress=y(n)的區別
- oracle10g,11g中的exp,expdp引數compress, compression完全不同的定義Oracle
- 各平臺影響oracle Process數的引數(轉)Oracle
- exp匯出compress引數導致的imp時擴充套件太大套件
- ASP中函式呼叫對引數的影響 (轉)函式
- Oracle JDBC ResultSet引數測試OracleJDBC
- Oracle Lob型別相關引數以及效能影響Oracle型別
- Oracle 11g 測試停庫對job的影響Oracle
- 最影響Oracle系統效能的初始化引數(zt)Oracle
- 轉:oracle EXP /IMP引數詳解Oracle
- 【Shared Server Mode】測試調整shared_servers引數對資料庫的影響Server資料庫
- JVM 引數調整對 sortx 的影響JVM
- Java教程:影響MySQL效能的配置引數JavaMySql
- 引數修改影響 sql version_countSQL
- oracle11gR2 table compress一點測試Oracle
- Oracle 11.2.0.1 Result Cache 測試 - 2 引數Oracle
- 測試修改作業系統時間&時區對oracle的影響作業系統Oracle
- stopkey對索引掃描的影響測試TopK索引
- 人工智慧對軟體測試的影響人工智慧
- 《Oracle EXP工具QUERY引數使用方法和限制條件》-使用場景-對比測試-可下載Oracle
- table_open_cache引數對mysql效能的影響MySql
- 測試SQLPLUS的ARRAYSIZE對效能的影響SQL
- onconfig中對CPU 記憶體的利用率影響的引數記憶體
- mysql的DDL操作對業務產生影響測試MySql
- Kafka之acks引數對訊息持久化的影響Kafka持久化
- JPEG的量化引數QP如何影響壓縮質量
- MogDB/openGauss 壞塊測試-對啟動的影響-測試筆記1筆記
- 雙下劃線開頭的記憶體引數對Oracle AMM行為的影響記憶體Oracle
- 測試truncate,delete 對rman 備份集大小的影響delete
- 介面測試-引數校驗
- 引數配置 -- 最大效能模式 dataguard 不影響Production DB .模式
- EXP COMPRESS以及EXP/IMP EXPDP/IMPDP匯入表結構注意
- windows下net命令能否啟動oracle ,還受到一個登錄檔引數的影響WindowsOracle
- 測試oracle 11.2.0.4的remote_login_password引數含義OracleREM
- Oracle 11.2.0.1 Result Cache 測試 - 3 引數及使用,限制Oracle
- Oracle11g新特性影響EXP匯出,ORA-01455的處理Oracle
- 測試多分支開發對合並程式碼的影響
- 軟體測試對軟體質量的影響有那些?