Oracle數(shù)據(jù)庫(kù)管理技的示例
以下的文章主要是對(duì)Oracle數(shù)據(jù)庫(kù)的空間相關(guān)管理技巧的描述,我們都知道關(guān)于相關(guān)的連續(xù)空間是可以用以下的語(yǔ)句,查看Oracle數(shù)據(jù)庫(kù)中的自由空間,以下就是相關(guān)內(nèi)容的具體介紹,望你會(huì)有所收獲。
- SQL > select * from dba_free_space
- where tablespace_name='SFSJTS'
- 2 order by block_id;
- TABLESPACE FILE_ID BLOCK_ID BYTESBLOCKS
- _NAME
- SFSJTS 6 133455 1064960 130
- SFSJTS 6 133719 1032192 126
- SFSJTS 6 133845 1064960 130
- SFSJTS 6 135275 1064960 130
- SFSJTS 6 135721 606208 74
- SFSJTS 6 139877 901120 110
- SFSJTS 6 143497 737280 90
- SFSJTS 6 220248 737280 90
- SFSJTS 6 246228 491520 60
- SFSJTS 6 261804 1064960 130
- 10 rows selected.
我們可以通過(guò)命令的結(jié)果來(lái)估計(jì)相鄰自由空間的真正數(shù)量。對(duì)每一行,用起始快的id(BLOCK_ID)加上自由塊(BLOCKS)的數(shù)量,如果其和與下一行的塊id(BLOCK_ID)相等,則此兩行是連續(xù)的。如上例第二行和第三行,133719+126=133845,而1338456+130!=135275,所以從block_id為133719開始,有126+130=256個(gè)block的連續(xù)空間。
在Oracle數(shù)據(jù)庫(kù)的后臺(tái),系統(tǒng)監(jiān)視器(SMON)周期性地合并自由空間相鄰的塊,以得到更大的連續(xù)塊。而DBA可以用SQL命令來(lái)完成這個(gè)工作:
- alter tablespace tablespace_name coalesce;
Oracle空間管理對(duì)Oracle數(shù)據(jù)庫(kù)的工作性能有重要影響,其管理方法值得我們認(rèn)真摸索研究。
文章出自: http://www.programbbs.com/doc/class10-3.htm
【編輯推薦】