데이터베이스 재난 방지 [폐쇄]

내 데이터베이스가 250GB보다 큽니다. 타사 도구를 사용하여 예약 된 백업을 만듭니다.

예약 데이터베이스 백업이 SQL Server 데이터베이스를 손상으로부터 보호하는 가장 좋은 방법입니까? 아니면 다른 것을 추천 할 수 있습니까?



답변

백업은 손상을 막을 수 없습니다. 아무것도 부패를 절대적으로 막을 수 없습니다.

백업은 손상 또는 기타 재난 발생시 데이터를 이전 시점으로 복구 할 수 있도록하는 것입니다.

백업 일정이 사용자를 적절히 보호하는지 여부는 동료 커뮤니티가 대답 할 수있는 것이 아닙니다. 비즈니스 요구 사항에 따라 달라집니다. 복구 지점 목표 (RPO)를 고려해야합니다. 얼마나 많은 데이터를 잃을 수 있습니까? 5 분으로 제한하고 하루에 한 번 전체 백업을 수행하고 1 시간마다 백업을 기록하는 경우 보장되지 않습니다. 진정으로 자신을 보호하려면 전체 복구 모드에 있어야하며 <= n 분마다 로그 백업을 수행해야합니다. 여기서 n은 유지할 수있는 최대 데이터 손실량입니다.

RTO (복구 시간 목표)와 같은 다른 고려 사항도 있습니다. 재해가 발생한 경우 온라인으로 돌아 오는 데 얼마나 시간을 할애 할 수 있습니까? 이를 통해 드라이브에 백업을 액세스 할 수 있도록 준비 할 것인지, 로그 전달을 사용하거나 미러링, FCI 및 가용성 그룹과 같은 더 높은 “비용”DR 기술을 사용하여 웜 대기를 적극적으로 유지할지 여부가 결정됩니다. 이러한 기술 중 일부는 데이터 손상을 방지하는 데 도움이되지만 다른 유형의 장애는 다루지 않습니다 (예 : where 절이없는 우발적 인 삭제는 기본 및 보조에서 모두 행복하게 실행 됨).


답변

내 경험상 데이터베이스를 보호하는 가장 좋은 방법은 예약 된 백업입니다. Aaron이 말했듯이이 두 가지 질문에 대답하는 것이 매우 중요합니다.

얼마나 많은 데이터를 잃을 수 있습니까?
재난이 발생하면 온라인으로 돌아 오는 데 얼마나 시간을 할애 할 수 있습니까?

물론 내 데이터베이스는 250GB보다 작고 광활한 백업 계획을 선호합니다. 24 시간마다 전체 데이터베이스 백업, 3 시간마다 차등 백업 및 15 분마다 트랜잭션 로그 백업을 수행합니다. 예, 장애가 발생하면 데이터베이스를 복원하는 데 시간이 더 걸리지 만 손실 된 데이터는 최소화됩니다.


답변

데이터베이스에 대한 복제 설정을 고려할 것입니다. 작동 방식 및 데이터 보호에 도움이되는 방법에 대한 자세한 내용은 여기를 참조하십시오.

https://msdn.microsoft.com/en-us/en-en/library/ms151198%28v=sql.110%29.aspx

물론 다른 네트워크에서도 다른 호스트에 복제를 설정하는 경우에는 대부분 의미가 있습니다. 트랜잭션 복제 설정은 복제가 즉시 이루어 지므로 궁극적 인 안전을 위해 op가 원하는 것이므로 예약 된 백업보다 항상 더 안정적입니다.