oracle壓縮表空間

2021-07-11 04:04:20 字數 2429 閱讀 5795

tablespace created.

--查詢表空間資訊

sys@orcl> selecttablespace_name,compress_for from dba_tablespaces;

tablespace_name                compress_for

system

sysaux

undotbs1

temp

users

example

test

compress_01                    oltp

tablespace created.

sys@orcl> alter tablespace tbs1 default compress for oltp;

tablespace altered.

sys@orcl> alter tablespace tbs1 default nocompress; 

tablespace altered.

a.在壓縮表空間裡建立oltp壓縮表

sys@orcl> create table t compress foroltp tablespace compress_01 as select * from all_objects;

table created.

b.在壓縮表空間裡建立非壓縮表

sys@orcl> create table t1 tablespacecompress_01 as select * from all_objects;

table created.

對壓縮表和非壓縮表進行分析:

sys@orcl> execdbms_stats.gather_table_stats(user,'t');

pl/sql procedure successfully completed.

sys@orcl> execdbms_stats.gather_table_stats(user,'t1');

pl/sql procedure successfully completed.

sys@orcl> select table_name,compress_forfrom user_tables where table_name in('t','t1');

table_name                     compress_for

t                              oltp

t1                             oltp

結論:在oltp壓縮表空間裡建立壓縮表,如果不指定預設的壓縮方式,預設是按照表空間的壓縮方式

oltp來進行壓縮。

c.在壓縮表空間裡建立指定壓縮方式的表

sys@orcl> create table t2 compresstablespace compress_01 as select * from v$tablespace;

table created.

sys@orcl> select table_name,compress_forfrom user_tables where table_name='t2';

table_name                     compress_for

t2                             basic

結論:在oltp壓縮表空間內建立表的時候,指定壓縮方式為basic compress,那麼建立的表是按照basic compression壓縮,

說明表級別的壓縮方式會覆蓋表空間級別的壓縮方式。

d.索引的壓縮

sys@orcl> create index idx_1 ont(object_id) tablespace compress_01; 

index created.

sys@orcl> select index_name,compression from user_indexes whereindex_name='idx_1';

index_name                     compress

idx_1                          disabled

sys@orcl> create index idx_2 ont1(object_id) compress tablespace compress_01;

index created.

sys@orcl> select index_name,compressionfrom user_indexes where index_name='idx_2';

index_name                     compress

idx_2                          enabled

結論:在壓縮表空間裡建立索引,索引仍然是diabled,沒有壓縮,如果要壓縮索引,必須手動致命compress

oracle中啟用 禁用表空間 表壓縮

alter table t compress alter table t nocompress select owner,table name,compression from dba tables where owner scott alter tablespace users default c...

oracle壓縮表表空間

表壓縮是如何工作的 在orcle9i第2版中,表壓縮特性通過刪除在資料庫表中發現的重複資料值來節省空間。壓縮是在資料庫的資料塊級別上進行的。當確定乙個表要被壓縮後,資料庫便在每乙個資料庫資料塊中保留空間,以便儲存在該資料塊中的多個位置上出現的資料的單一拷貝。這一被保留的空間被稱作符號表 symbol...

mysql 表空間收縮 mysql壓縮表空間

repair table table name 修復表 optimize table table name 優化表 optimize local no write to binlog table tbl name tbl name 如果您已經刪除了表的一大部分,或者如果您已經對含有可變長度行的表 含...