SEARU.ORG
当前位置:SEARU.ORG > Linux 数据库 > 正文

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  

未经允许不得转载:SEARU.ORG » Oracle DBA–查看表空间的使用情况SQL语句

赞 (0)
分享到:更多 ()

评论 0