달력

52025  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31


DBA_TABBLESPACES 데이터 사전

SQL>conn sys/manager as sysdba
SQL>SELECT tablespace_name, initial_extent, max_extents,  min_extlen
         FROM dba_tablespaces;



DBA_DATA_FILES 데이터 사전

SQL>conn sys/manager as sysdba
SQL> SELECT file_name, tablespace_name
          FROM dba_data_files;



콘트롤파일의 데이타파일 정보와 테이블스페이스 정보

SQL>conn sys/manager as sysdba
SQL> SELECT status,enabled, t.name,d.name
          FROM  v$datafile d, v$tablespace t
          WHERE t.ts#=d.ts#;
 
STATUS    ENABLED       NAME            NAME
-------   ----------      ------------   -------------------------------------
SYSTEM  READ WRITE SYSTEM       C:\ORACLE\ORADATA\ORACLE\SYSTEM01.DBF
ONLINE    READ WRITE RBS             C:\ORACLE\ORADATA\ORACLE\RBS01.DBF
ONLINE    READ WRITE USERS         C:\ORACLE\ORADATA\ORACLE\USERS01.DBF
ONLINE    READ WRITE TEMP           C:\ORACLE\ORADATA\ORACLE\TEMP01.DBF
ONLINE    READ WRITE TOOLS         C:\ORACLE\ORADATA\ORACLE\TOOLS01.DBF
ONLINE    READ WRITE INDX            C:\ORACLE\ORADATA\ORACLE\INDX01.DBF
ONLINE    READ WRITE DRSYS         C:\ORACLE\ORADATA\ORACLE\DR01.DBF
ONLINE    READ WRITE STORM        C:\ORACLE\ORADATA\ORACLE\STORM.DBF


테이블 스페이스의데이터 파일과 테이블 스페이스의 크기 확인
 
DBA_DATA_FILES 데이터 사전을 이용 하면 됩니다.
 
SQL> COL FILE_NAME FORMAT A40
SQL> COL TABLESPACE_NAME FORMAT A15
 
SQL>  SELECT file_name, tablespace_name, bytes, status FROM  DBA_DATA_FILES;
 
FILE_NAME                                                    T ABLESPACE_NAME      BYTES     STATUS
-------------------------------------              ---------------    ------------    ------------
C:\ORACLE\ORADATA\ORACLE\SYSTEM01.DBF   SYSTEM           248250368   AVAILABLE
C:\ORACLE\ORADATA\ORACLE\RBS01.DBF          RBS                545259520    AVAILABLE
C:\ORACLE\ORADATA\ORACLE\USERS01.DBF      USERS            113246208    AVAILABLE
C:\ORACLE\ORADATA\ORACLE\TEMP01.DBF       TEMP               75497472     AVAILABLE
C:\ORACLE\ORADATA\ORACLE\TOOLS01.DBF     TOOLS             12582912     AVAILABLE
C:\ORACLE\ORADATA\ORACLE\INDX01.DBF         INDX                60817408     AVAILABLE
C:\ORACLE\ORADATA\ORACLE\DR01.DBF            DRSYS            92274688      AVAILABLE
 
FILE_NAME : DATAFILE의 물리적인 위치와 파일명을 알 수 있습니다.
TABLESPACE_NAME : 테이블 스페이스의 이름을 알 수 있습니다.
BYTES : 테이블 스페이스의 크기를 알수 있습니다.
STATUS : 테이블 스페이스의 이용 가능 여부를 알 수 있습니다.


테이블 스페이스별 사용 가능한 공간의 확인

DBA_FREE_SPACE 데이터 사전

 
SQL> SELECT tablespace_name, SUM(bytes), MAX(bytes)
         FROM DBA_FREE_SPACE
         GROUP BY tablespace_name

 
TABLESPACE_NAME SUM(BYTES) MAX(BYTES)
---------------           ----------     ----------
DRSYS                     88268800           88268800
INDX                        60809216           60809216
RBS                       524279808          498589696
SYSTEM                      65536                 65536
TEMP                      75489280           74244096
TOOLS                     12574720           12574720
USERS                   113238016          113238016
   

◎ SUM을 사용한 이유는하나의 테이블 스페이스에 분산되어 있는 여유공간을 합한 것이며,
◎ MAX를 사용한 이유는 여유 공간중 가장 큰 공간의 SIZE를 의미 합니다.
 


 데이타 화일에 대한 총 크기와 남아있는 공간, 사용한 용량, 남은 %율

 
DBA_FREE_SPACE, DBA_DATA_FILES 데이터 사전

 
SQL> COL FILE_NAME FORMAT A40
SQL> COL TABLESPACE_NAME FORMAT A30
SQL> SET LINESIZE 150
SQL> SELECT  b.file_name "FILE_NAME",                                         --  DataFile Name
                 b.tablespace_name "TABLESPACE_NAME",                      -- TableSpace Name
                 b.bytes / 1024 "TOTAL SIZE(KB)",                                    -- 총 Bytes
                 ((b.bytes - sum(nvl(a.bytes,0)))) / 1024 "USED(KB)",         -- 사용한 용량
                 (sum(nvl(a.bytes,0))) / 1024 "FREE SIZE(KB)",                  -- 남은 용량
                 (sum(nvl(a.bytes,0)) / (b.bytes)) * 100 "FREE %"               -- 남은 %
         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
 
 
FILE_NAME                                                  TABLESPACE_NAME  TOTAL SIZE(KB)   USED(KB) FREE SIZE(KB)     FREE %
-------------------------------------                ---------------     --------------   -------------    ------------- ----------
C:\ORACLE\ORADATA\ORACLE\DR01.DBF            DRSYS                    90112            3912         86200            95.6587358
C:\ORACLE\ORADATA\ORACLE\INDX01.DBF         INDX                        59392                8         59384            99.9865302
C:\ORACLE\ORADATA\ORACLE\RBS01.DBF          RBS                       532480          20488        511992            96.1523438
C:\ORACLE\ORADATA\ORACLE\TEMP01.DBF       TEMP                       73728               8         73720             99.9891493
C:\ORACLE\ORADATA\ORACLE\TOOLS01.DBF     TOOLS                      12288               8         12280            99.9348958
C:\ORACLE\ORADATA\ORACLE\USERS01.DBF      USERS                    110592               8        110584           99.9927662
   

  ================================================
    * 오라클 정보공유 커뮤니티 oracleclub.com
    * http://www.oracleclub.com
    * http://www.oramaster.net
    * 강좌 작성자 : 김정식 (oramaster _at_ naver.com)
  ================================================
※ oracleclub 강좌를 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
※ oracleclub 강좌는 개인의 학습용으로만 사용 할 수 있습니다. 학원 홍보용이나 수익을 얻기 위한 용도로
    사용을 하시면 안됩니다. ^^

'DB' 카테고리의 다른 글

ORA-01034  (0) 2008.06.04
[QUERY] oracle 유저정보조회 및 패스워드 변경  (0) 2008.06.04
[QUERY] ORACLE 사용자 생성  (0) 2008.05.30
DB Import  (0) 2008.05.30
DB Export  (0) 2008.05.30
Posted by 알 수 없는 사용자
|