Mssql

MSSQL 용량 확인 및 설정

Rootrator 2011. 2. 28. 14:55

엔터프라이즈 매니저에서는 DB전체의 용량사용 확인은 가능하다.

하지만 테이블 마다 용량확인 불가능한데

테이블 용량확인은 SQL쿼리로 조회가 가능하다 

select table_name = convert(varchar(30), min(o.name)),   table_size = str(sum(reserved) * 8192 / 1024.,15,0)
from sysindexes i inner join sysobjects o on (o.id = i.id)
where i.indid in (0, 1, 255) and o.xtype = 'U' group by i.id;


그리고 용량 확보를 위해 데이터를 지웠지만

오히려 데이터가 늘어난 어이없는 상황이 있었다.
 
트렌젝션 로그만 200메가정도...?

이럴 경우는 최종 용량크기를 정할 수 있는 SQL문이 있다.


DBCC SHRINKFILE(데이터베이스명_DATA, 최종 크기)

트렌젝션 로그 파일 용량 설정

BACKUP LOG [데이터베이스명] WITH TRUNCATE_ONLY

로그파일 용량 1MB로 설정

DBCC SHRINKFILE(데이터베이스명_LOG, 1)

반응형