SQL Server 2012 SP1 트랜잭션 로그가 꽉 차나요?

SQL Server 2012 SP1 트랜잭션 로그가 꽉 차나요?

내 DB 중 하나에 트랜잭션 로그가 가득 차는 데 문제가 있습니다. 전체 복구로 설정되어 있으며 유지 관리 계획을 통해 정기적으로 백업되고 있습니다. 주말마다 전체 DB 백업을 하고, 주중에는 매일 차등 백업을 하고 매시간 트랜잭션 로그 백업도 합니다. 로그 잘림 상태를 확인해 보니 현재 상태는 LOG_BACKUP입니다. 주문형 백업을 통해 삭제할 수 있는데 유지 관리 계획에서는 왜 삭제되지 않나요?

내가 무엇을 놓치고 있나요?

답변1

데이터베이스에 트랜잭션이 많은 경우 트랜잭션 로그를 매시간보다 더 자주 백업해야 할 수도 있습니다. 15분마다는 드문 일이 아닙니다. 로그 백업을 더 자주 실행하려면 유지 관리 작업을 편집하는 것이 좋습니다.

또한 .ldf에 충분한 디스크 공간이 있습니까? 실제 파일이 커지는 것이 방지되면 잘려도 공간이 부족해집니다.

답변2

SQL Server의 트랜잭션 로그가 "전체"로 표시되는지 또는 확장이 필요한지 여부에 영향을 미치는 몇 가지 사항은 다음과 같습니다.

  • 장기 실행 트랜잭션
  • 전체 또는 대량 로그 복구 모델에서 로그 백업 빈도
  • 트랜잭션 로그에 있는 가상 로그 파일(vlfs)의 수와 크기

Jes Schultz Borland는 이 모든 것이 어떻게 작동하는지 훨씬 더 자세히 설명하는 무료 비디오를 제공합니다. 도움이 될 것 같습니다.http://www.brentozar.com/archive/2012/09/how-sql-server-works-log-file-video/

데이터 손실을 방지하는 것이 중요한 경우 로그 백업을 정기적으로 실행하세요.하나분은 이상한 일이 아닙니다. 최악의 시나리오에서 얼마나 많은 데이터를 잃어도 괜찮은지에 관한 것입니다.

답변3

응. 백업을 전혀 하지 않은 경우 발생합니다. 당신이 일을 하지 않고 채우지 않으면 차의 탱크가 비워지는 것과 비슷합니다.

전체 또는 증분 백업 후에는 트랜잭션 로그가 삭제되어야 합니다. 백업을 수행하지 않는 경우 데이터베이스 모델을 단순으로 설정하세요.

정기적으로 전체 백업을 수행하는 경우 누군가 백업 방법을 모르고 트랜잭션 로그 삭제를 시퀀스에 넣는 것을 잊어버린 것이 분명합니다. 유지 관리 계획에는 이에 대한 설정이 있습니다.

말한 내용: 복제와 같은 작업을 실행하면 뒤쳐지면 로그가 차단될 수 있습니다.

관련 정보