DBA常用SQL之表空间与数据文件

时间:2021-11-16 04:38:20

DBA常用SQL之表空间与数据文件DBA常用SQL之表空间与数据文件

select t.tablespace_name, round(sum(bytes / (1024 * 1024)), 0) ts_size
  from dba_tablespaces t, dba_data_files d
 where t.tablespace_name = d.tablespace_name
 group by t.tablespace_name;
1.查看表空间的名称及大小 DBA常用SQL之表空间与数据文件DBA常用SQL之表空间与数据文件
select a.tablespace_name,
       a.bytes / 1024 / 1024 "Sum MB",
       (a.bytes - b.bytes) / 1024 / 1024 "used MB",
       b.bytes / 1024 / 1024 "free MB",
       round(((a.bytes - b.bytes) / a.bytes) * 100, 2) "percent_used"
  from (select tablespace_name, sum(bytes) bytes
          from dba_data_files
         group by tablespace_name) a,
       (select tablespace_name, sum(bytes) bytes, max(bytes) largest
          from dba_free_space
         group by tablespace_name) b
 where a.tablespace_name = b.tablespace_name
 order by ((a.bytes - b.bytes) / a.bytes) desc;

2.查看表空间使用率
2.查看表空间使用率
 
3.查看表空间物理文件的名称及大小

select
tablespace_name, file_id, file_name, STATUS, ONLINE_STATUS, round(bytes / (1024 * 1024), 0) total_space from dba_data_files order by tablespace_name;
DBA常用SQL之表空间与数据文件DBA常用SQL之表空间与数据文件
select segment_name,
       tablespace_name,
       r.status,
       (initial_extent / 1024) InitialExtent,
       (next_extent / 1024) NextExtent,
       max_extents,
       v.curext CurExtent
  From dba_rollback_segs r, v$rollstat v
 Where r.segment_id = v.usn( )
 order by segment_name;

4.查看回滚段名称及大小
4.查看回滚段名称及大小
select file_name,tablespace_name,autoextensible from dba_data_files
6.监控表空间的 I/O 比例 select df.tablespace_name name,
       df.file_name       "file",
       f.phyrds           pyr,
       f.phyblkrd         pbr,
       f.phywrts          pyw,
       f.phyblkwrt        pbw
  from v$filestat f, dba_data_files df
 where f.file# = df.file_id
 order by df.tablespace_name;