SELECT A.TABLESPACE_NAME,
ROUND(SUM(A.BYTES) / (1024 * 1024)) || 'M' "전체",
ROUND(SUM(B.FREES) / (1024 * 1024)) || 'M' "여유"
FROM
(SELECT FILE_ID, TABLESPACE_NAME, SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY FILE_ID, TABLESPACE_NAME) A,
(SELECT TABLESPACE_NAME, FILE_ID, SUM(BYTES) FREES
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
GROUP BY A.TABLESPACE_NAME
와 같이 하시면 tablespace 전체로 해서 나옵니다.
SELECT A.TABLESPACE_NAME "테이블스페이스명",
(A.BYTES - B.FREE) "사용공간",
B.FREE "여유 공간",
A.BYTES "총크기",
TO_CHAR( (B.FREE / A.BYTES * 100) , '999.99')||'%' "여유공간"
FROM
(
SELECT FILE_ID,
TABLESPACE_NAME,
SUBSTR(FILE_NAME,1,200) FILE_NM,
SUM(BYTES) BYTES
FROM DBA_DATA_FILES
GROUP BY FILE_ID,TABLESPACE_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
http://database.sarang.net 에 가셔서 질문 올리시는
http://database.sarang.net 에 가셔서 질문 올리시는게
답을 20배이상 빨리 얻을수 있는 방법입니다.
게시판에는 전혀 관련없는것 같지만..기분이 영 찜찜해서.. 답변이
게시판에는 전혀 관련없는것 같지만..
기분이 영 찜찜해서.. 답변이나 달아야지.. ^^
와 같이 하시면 tablespace 전체로 해서 나옵니다.
위와 같이 하면 tablespace 각 datafile별로 나옵니다.
>/dev/null 2>&1
기분이 찜찜한데도 상세히 답변 달아주신dreampia 님 감사합니다.
기분이 찜찜한데도 상세히 답변 달아주신
dreampia 님 감사합니다..^^
질문올리기전에 게시판 검색을 하고 올리는 편인데
상황이 좀 그랬네요....
암튼... 감사합니다..
댓글 달기