- 最后登录
- 2023-8-16
- 在线时间
- 1686 小时
- 威望
- 2135
- 金钱
- 50532
- 注册时间
- 2011-10-12
- 阅读权限
- 200
- 帖子
- 5207
- 精华
- 39
- 积分
- 2135
- UID
- 2
|
2#
发表于 2012-3-3 23:24:38
"怎么查一个表空间空闲的最大连续块个数?"
你我想问的是 如何查一个表空间tablespace 上的 最大的连续空闲空间Frag。
可以通过以下SQL查到:- ttitle -
- center 'Database Freespace Summary' skip 2
- comp sum of nfrags totsiz avasiz on report
- break on report
- set pages 999
- col tsname format a16 justify c heading 'Tablespace'
- col nfrags format 999,990 justify c heading 'Free|Frags'
- col mxfrag format 999,999 justify c heading 'Largest|Frag (MB)'
- col totsiz format 999,999 justify c heading 'Total|(MB)'
- col avasiz format 999,999 justify c heading 'Available|(MB)'
- col pctusd format 990 justify c heading 'Pct|Used'
- select total.TABLESPACE_NAME tsname,
- D nfrags,
- C/1024/1024 mxfrag,
- A/1024/1024 totsiz,
- B/1024/1024 avasiz,
- (1-nvl(B,0)/A)*100 pctusd
- from
- (select sum(bytes) A,
- tablespace_name
- from dba_data_files
- group by tablespace_name) TOTAL,
- (select sum(bytes) B,
- max(bytes) C,
- count(bytes) D,
- tablespace_name
- from dba_free_space
- group by tablespace_name) FREE
- where
- total.TABLESPACE_NAME=free.TABLESPACE_NAME(+)
- /
- Free Largest Total Available Pct
- Tablespace Frags Frag (MB) (MB) (MB) Used
- ---------------- -------- --------- -------- --------- ----
- SYSAUX 133 53 1,070 140 87
- UNDO11 5 52 300 74 75
- UNDOSS 1 1 1 1 6
- USERS 33 126 785 151 81
- SYSTEM 2 91 4,060 91 98
- EXAMPLE 157 33 346 172 50
- UNDO22 28 166 500 340 32
- UNDOTBS2 14 349 525 506 4
- UNDO3 1 100
- -------- -------- ---------
- sum 373 7,588 1,475
复制代码 参考 Largest Frags 字段。
reference : tablespace report http://www.oracledatabase12g.com ... lespace-report.html |
|