SQL Server 로그 파일을 자르는 명령은 무엇입니까?
-
09-06-2019 - |
문제
동료에게 보내기 전에 LDF 파일을 비워야 합니다.SQL Server에서 로그를 강제로 자르려면 어떻게 해야 하나요?
해결책
내 기억이 좋다면...쿼리 분석기 또는 이에 상응하는 것:
BACKUP LOG databasename WITH TRUNCATE_ONLY
DBCC SHRINKFILE ( databasename_Log, 1)
다른 팁
관리 스튜디오에서:
- 실제 환경에서는 이 작업을 수행하지 말고 개발 DB를 최대한 축소하려면 다음을 수행하세요.
- 데이터베이스를 마우스 오른쪽 버튼으로 클릭하고
Properties
, 그 다음에Options
. - "복구 모델"이 "전체"가 아닌 "단순"으로 설정되어 있는지 확인하세요.
- 확인을 클릭하세요
- 데이터베이스를 마우스 오른쪽 버튼으로 클릭하고
- 데이터베이스를 다시 마우스 오른쪽 버튼으로 클릭하고
Tasks
->Shrink
->Files
- 파일 형식을 "로그"로 변경
- 확인을 클릭하세요.
또는 이를 수행하는 SQL은 다음과 같습니다.
ALTER DATABASE mydatabase SET RECOVERY SIMPLE
DBCC SHRINKFILE (mydatabase_Log, 1)
SQL Server 2008의 경우 명령은 다음과 같습니다.
ALTER DATABASE ExampleDB SET RECOVERY SIMPLE
DBCC SHRINKFILE('ExampleDB_log', 0, TRUNCATEONLY)
이로 인해 14GB 로그 파일이 1MB로 줄었습니다.
SQL 2008의 경우 로그를 다음 위치에 백업할 수 있습니다. nul
장치:
BACKUP LOG [databaseName]
TO DISK = 'nul:' WITH STATS = 10
그런 다음 사용 DBCC SHRINKFILE
로그 파일을 자릅니다.
truncate_only와 dbccshrinkfile 명령을 사용한 백업 로그 로그 이름
또 다른 옵션은 Management Studio를 통해 데이터베이스를 분리하는 것입니다.그런 다음 로그 파일을 삭제하거나 이름을 바꾸고 나중에 삭제하십시오.
Management Studio로 돌아가서 데이터베이스를 다시 연결합니다.첨부 창의 파일 목록에서 로그 파일을 제거합니다.
DB는 새로운 빈 로그 파일을 첨부하고 생성합니다.모든 것이 정상인지 확인한 후 이름이 변경된 로그 파일을 삭제할 수 있습니다.
프로덕션 데이터베이스에는 이 기능을 사용하면 안 됩니다.
제휴하지 않습니다 StackOverflow