應用9i新特性:在資料庫中使用不同塊大小的表空間
待續
平臺:windows 2000 sp3
DB :Oracle 9.0.1.1.1
用statspack對資料庫進行效能監測發現Top 1等待事件是db file sequential read,在增大資料庫表、索引的freelists後,效能改變不大。由於該資料庫的標準塊大小為4k,使用的資料庫版本是bug多多的901,所以保持業務表資料不變,規劃使用16k的表空間來存放大表的索引(就算出錯,重建索引即可)。
-- 首先配置初始化引數並建立表空間
sql>conn / as sysdba
sql>alter system set db_16k_cache_size=100m scope=both;
sql>create tablespace global_gryszm_index_16k datafile ‘%ORADATA%global_gryszm_index_16k_ 01.dbf’ size 1000m blocksize 16k;
我們來看看塊大小變化前索引的統計資訊
column index_name format a30
select
index_name ,
num_rows ,
avg_leaf_blocks_per_key l_blocks,
avg_data_blocks_per_key d_blocks,
clustering_factor cl_fac,
blevel
from user_indexes
where table_name = ‘JF_YLYSZM’
/
INDEX_NAME NUM_ROWS L_BLOCKS D_BLOCKS CL_FAC BLEVEL
IDX_JF_YLYSZM_DWID00_JZNYUE 24902405 7 24 1266585 3
IDX_JF_YLYSZM_GMSFHM 24812266 1 101 20646456 3
IDX_JF_YLYSZM_GRBH00_NYUE00 24812266 1 1 22685500 3
PRIMARYKEY_YLYSZM 24443477 1 1 24443474 3
UNIQUE_YLYSZM 24474797 1 1 22338997 3
透過線上rebuild索引把索引move到新的表空間上:
sql>alter index IDX_JF_YLYSZM_DWID00_JZNYUE reduild online tablespace global_gryszm_index_16k;
sql>alter index IDX_JF_YLYSZM_GMSFHM reduild online tablespace global_gryszm_index_16k;
sql>alter index IDX_JF_YLYSZM_GRBH00_NYUE00 reduild online tablespace global_gryszm_index_16k;
sql>alter index PRIMARYKEY_YLYSZM reduild online tablespace global_gryszm_index_16k;
sql>alter index UNIQUE_YLYSZM reduild online tablespace global_gryszm_index_16k;
塊大小變化後索引的統計資訊:
column index_name format a30
select
index_name ,
num_rows ,
avg_leaf_blocks_per_key l_blocks,
avg_data_blocks_per_key d_blocks,
clustering_factor cl_fac,
blevel
from user_indexes
where table_name = ‘JF_YLYSZM’
/
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/6906/viewspace-21556/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 如何獲取 PostgreSQL 資料庫中的表大小、資料庫大小、索引大小、模式大小、表空間大小、列大小SQL資料庫索引模式
- oracle10G新特性之臨時表空間組的應用Oracle
- Oracle資料庫表空間的資料檔案大小上限。Oracle資料庫
- 檢視Oracle資料庫表空間大小,是否需要增加表空間的資料檔案Oracle資料庫
- 應用系統按表空間的應用方式使用,表空間的配置
- PostgreSQL在不同的表空間移動資料檔案SQL
- 在資料庫之間移動表空間資料庫
- 如何檢視Oracle資料庫表空間大小(空閒、已使用),是否要增加表空間的資料檔案...Oracle資料庫
- 9i新特性之Flashback Query的應用(1)
- 9i新特性之Flashback Query的應用(2)
- 達夢資料庫表空間等空間大小查詢方法總結資料庫
- 表空間中有資料也可以壓縮表空間(資料檔案)大小
- 計算一個表佔用的空間的大小
- 表在同一庫中不同表空間上轉移
- 檢視使用者的資料佔用的空間大小
- oracle 回收表空間的資料檔案大小Oracle
- [轉帖]達夢資料庫-統計資料表資料量及空間表大小資料庫
- PostgreSQL:表空間-->資料庫-->表SQL資料庫
- 把資料匯入到不同的表空間
- 如何把資料匯入不同的表空間
- 同/不同庫遷移資料(在同使用者及表空間)測試
- 表在同一庫中不同表空間上轉移[轉]
- 查詢資料庫每個表佔用的大小資料庫
- 使用EXPDP IMPDP傳輸不同資料庫的不同表空間(新增網路傳輸)資料庫
- [譯] 在 Laravel 應用程式之間共享資料庫Laravel資料庫
- Data Guard新特性:快照備用資料庫資料庫
- 資料庫邏輯結構:表空間、段、區、塊的字典資料庫
- 9i新特性之資料庫監控系列資料庫
- 地理空間資料Geometry在MySQL中使用MySql
- MYSQL造資料佔用臨時表空間MySql
- ORACLE應用經驗(5)-表空間Oracle
- 檢視資料庫佔用磁碟空間的方法資料庫
- Oracle 18c新特性詳解 - 表和表空間相關的新特性Oracle
- 檢視資料庫表空間資料庫
- oracle清除資料庫表空間Oracle資料庫
- 刪除資料庫表空間資料庫
- oracle中用sql計算一個表佔用的空間的大小OracleSQL
- 通過oracle10g exp/imp在不同表空間間遷移資料Oracle