DBCC ShrinkDatabase()
DBCC ShrinkFile()
- 데이터베이스를 축소하려면 두 DBCC 명령을 모두 실행해야합니까?
- 위의 두 가지 차이점은 무엇입니까?
DBCC ShrinkDatabase()
DBCC ShrinkFile()
답변:
간단히...
DBCC ShrinkDatabase()
: 모든 파일 축소DBCC ShrinkFile()
: 하나의 파일예를 들어, 로그 백업 문제가있을 수 있으며 제어가 불가능하여을 실행 DBCC ShrinkFile()
합니다.
당신 은 거의 사용하지 않습니다 ShrinkDatabase
.
두 명령을 사용하기 전에 축소에 관한 Paul Randal의 블로그 를 읽으십시오. .
명확한 이유가 없으면 파일 중 하나 (mdf, ldf)를 축소하지 않았습니다. 파일은 크기가 크기 때문에 필요한 크기입니다. 정기적 인 유지 관리의 일환으로 제안한 블로그는 SQL Server의 작동 방식을 이해하지 못할 수 있습니다.
기본 데이터베이스에는 두 개의 파일이 있습니다
MyDb.MDF 및 MyDb.LDF
MDF 파일은 기본 파티션이 상주하는 데이터 파일입니다. 필요에 따라 데이터베이스를 여러 파일로 분할 할 수 있습니다. 이는 데이터 (단일 또는 다중 테이블)가 일반적으로 별도의 하드 드라이브에있는 여러 파일에 걸쳐 더 높은 성능을 달성 할 수 있도록하기위한 것입니다.
데이터베이스를 축소하면 해당 데이터베이스와 관련된 모든 파일이 축소됩니다.
파일을 축소하면 선택한 파일 만 축소됩니다.
데이터베이스 축소 명령 만 사용해야합니다. 그러나 일반적으로이 작업을 수행하는 것은 좋지 않으며 권장되는 방법도 아닙니다.
문제가 무엇인지 알려 주시면 문제 해결 방법에 대한 자세한 정보를 제공해 드리겠습니다.
대부분 dbcc shrinkfile 만 사용합니다. sp_helpdb 'databasename'은 데이터베이스의 데이터 및 로그 파일 목록을 제공합니다.
mnagement studio를 마우스 오른쪽 단추로 클릭하면 tasks-> shrink-> file에서 축소 할 수있는 비율 (%)을 제공합니다.
우리가 축소 한 것은 디스크에서 여유 공간으로 다시 사용할 수 있습니다.
예 : 'databasename'dbcc shrinkfile (fileid, 100) 사용
여기 100은 100MB입니다
fileid는 sp_helpdb 'databasename'에서 얻을 수 있습니다.