Oracle DBA--查看表空间的使用情况SQL语句


1. SQL语句1:

  1. --1、查看表空间的名称及大小    
  2. SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size   
  3.   FROM dba_tablespaces t, dba_data_files d   
  4.  WHERE t.tablespace_name = d.tablespace_name   
  5.  GROUP BY t.tablespace_name;   
  6. --2、查看表空间物理文件的名称及大小    
  7. SELECT tablespace_name,   
  8.        file_id,   
  9.        file_name,   
  10.        round(bytes / (1024 * 1024), 0) total_space   
  11.   FROM dba_data_files   
  12.  ORDER BY tablespace_name;   
  13. --3、查看回滚段名称及大小    
  14. SELECT segment_name,   
  15.        tablespace_name,   
  16.        r.status,   
  17.        (initial_extent / 1024) InitialExtent,   
  18.        (next_extent / 1024) NextExtent,   
  19.        max_extents,   
  20.        v.curext CurExtent   
  21.   FROM dba_rollback_segs r, v$rollstat v   
  22.  WHERE r.segment_id = v.usn(+)   
  23.  ORDER BY segment_name;   
  24. --4、查看控制文件    
  25. SELECT name FROM v$controlfile;   
  26. --5、查看日志文件    
  27. SELECT member FROM v$logfile;   
  28. --6、查看表空间的使用情况    
  29. SELECT SUM(BYtes) / (1024 * 1024) as free_space, tablespace_name   
  30.   FROM dba_free_space   
  31.  GROUP BY tablespace_name;   
  32. SELECT A.TABLESPACE_NAME,   
  33.        A.BYTES TOTAL,   
  34.        B.BYTES USED,   
  35.        C.BYTES FREE,   
  36.        (B.BYTES * 100) / A.BYTES "%   USED ",   
  37.        (C.BYTES * 100) / A.BYTES "%   FREE "  
  38.   FROM SYS.SM$TS_AVAIL A, SYS.SM$TS_USED B, SYS.SM$TS_FREE C   
  39.  WHERE A.TABLESPACE_NAME = B.TABLESPACE_NAME   
  40.    AND A.TABLESPACE_NAME = C.TABLESPACE_NAME;   
  41. --7、查看数据库库对象    
  42. SELECT owner, object_type, status, COUNT(*) COUNT#   
  43.   FROM all_objects   
  44.  GROUP BY owner, object_type, status;   
  45. --8、查看数据库的版本     
  46. SELECT version   
  47.   FROM Product_component_version   
  48.  WHERE SUBSTR(PRODUCT, 1, 6) = 'Oracle';   
  49. --9、查看数据库的创建日期和归档方式    
  50. SELECT Created, Log_Mode, Log_Mode FROM V$Database;  

2.SQL语句2:
 

  1. --1G=1024MB   
  2. --1M=1024KB   
  3. --1K=1024Bytes   
  4. --1M=11048576Bytes   
  5. --1G=1024*11048576Bytes=11313741824Bytes   
  6. SELECT a.tablespace_name "表空间名",   
  7.        total "表空间大小",   
  8.        free "表空间剩余大小",   
  9.        (total - free) "表空间使用大小",   
  10.        total/(1024*1024*1024) "表空间大小(G)",   
  11.        free/(1024*1024*1024) "表空间剩余大小(G)",   
  12.        (total - free)/(1024*1024*1024) "表空间使用大小(G)",   
  13.        ROUND((total - free) / total, 4) * 100 "使用率 %"  
  14.   FROM (SELECT tablespace_name, SUM(bytes) free   
  15.           FROM DBA_FREE_SPACE   
  16.          GROUP BY tablespace_name) a,   
  17.        (SELECT tablespace_name, SUM(bytes) total   
  18.           FROM DBA_DATA_FILES   
  19.          GROUP BY tablespace_name) b   
  20.  WHERE a.tablespace_name = b.tablespace_name  

相关内容