oracle运维--查看Oracle数据库中表空间信息的命令

一、表空间使用大小查询

1.1 数据库系统中的数据字典表(data dictionary tables)获取表空间的相关信息;

select
  a.a1 表空间名称,
  c.c2 类型,
  c.c3 区管理,
  b.b2/1024/1024 表空间大小M,
  (b.b2-a.a2)/1024/1024 已使用M,
  substr((b.b2-a.a2)/b.b2*100,1,5) 利用率
  from
  (select tablespace_name a1, sum(nvl(bytes,0)) a2 from dba_free_space group by tablespace_name) a,
  (select tablespace_name b1,sum(bytes) b2 from dba_data_files group by tablespace_name) b,
  (select tablespace_name c1,contents c2,extent_management c3 from dba_tablespaces) c
  where a.a1=b.b1 and c.c1=b.b1;

1.2 Oracle数据库中数据文件信息统计;

select
  b.file_name 物理文件名,
  b.tablespace_name 表空间,
  b.bytes/1024/1024 大小M,
  (b.bytes-sum(nvl(a.bytes,0)))/1024/1024 已使用M,
  substr((b.bytes-sum(nvl(a.bytes,0)))/(b.bytes)*100,1,5) 利用率
  from dba_free_space a,dba_data_files b
  where a.file_id=b.file_id
  group by b.tablespace_name,b.file_name,b.bytes
  order by b.tablespace_name

1.3 终版查看表空间文件使用情况;

 select b.file_id  文件ID,
  b.tablespace_name  表空间,
  b.file_name     物理文件名,
  b.bytes       总字节数,
  (b.bytes-sum(nvl(a.bytes,0)))   已使用,
  sum(nvl(a.bytes,0))        剩余,
  sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比
  from dba_free_space a,dba_data_files b
  where a.file_id=b.file_id
  group by b.tablespace_name,b.file_name,b.file_id,b.bytes
  order by b.tablespace_name

你可能感兴趣的:(oracle,运维)