ORACLE
TABLESPACE 조회
from-sh
2022. 10. 11. 15:50
728x90
** sysdba권한의 유저만 가능 (x$kccfe)
-- tablespace, datafile, 생성날짜, 용량
set line 300 col tablespace_name for a30 col file_name for a60 col fecrc_tim for a30 select tablespace_name, file_name, fecrc_tim creation_date, bytes/1024/1024/1024 GB from x$kccfe a, dba_data_files b where b.file_id = a.indx + 1 order by 1,2; |
set line 300 col tablespace_name for a30 col file_name for a60 col fecrc_tim for a30 select tablespace_name, file_name, fecrc_tim creation_date, bytes/1024/1024/1024 GB from x$kccfe a, dba_data_files bV$ASM_DISKGROUP usable_file_mb negative where (b.file_id = a.indx + 1) and (tablespace_name = '?') order by 1,2; |
-- tablespace, datafile별 사용 현황
SELECT A.TABLESPACE_NAME "tablespace", A.FILE_NAME "file_name", trunc(((A.BYTES - B.FREE)/1024/1024/1024,2) "used_space", trunc(B.FREE/1024/1024/1024,2) "free_space", trunc(A.BYTES/1024/1024/1024,2) "total", TO_CHAR((B.FREE / A.BYTES * 100) , '999.99')||'%' "free_per" FROM (SELECT FILE_ID, TABLESPACE_NAME, FILE_NAME, SUBSTR(FILE_NAME,1,200) FILE_NM, SUM(BYTES) BYTES FROM DBA_DATA_FILES GROUP BY FILE_ID,TABLESPACE_NAME,FILE_NAME,SUBSTR(FILE_NAME,1,200)) A, (SELECT TABLESPACE_NAME, FILE_ID, SUM(NVL(BYTES,0)) FREE FROM DBA_FREE_SPACE GROUP BY TABLESPACE_NAME,FILE_ID) B WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.FILE_ID = B.FILE_ID; |
-- tablespace, datafile별 생성 시간
select tablespace_name, status, creation_date, trunc(bytes/1024/1024/1024) GB, NAME from v$datafile_header where tablespace_name = '?'; |
728x90