Azure Stack에 SQL Server 백업
이 문서에서는 Azure Stack에서 SQL Server 데이터베이스를 보호하도록 MABS(Microsoft Azure Backup Server)를 구성하는 방법을 설명합니다.
SQL Server 데이터베이스 보호 워크플로
Azure에 대한 SQL Server 데이터베이스 백업 관리 및 Azure에서의 복구에는 다음이 포함됩니다.
- SQL server 데이터베이스를 보호하기 위한 백업 정책 만들기
- 주문형 백업 복사본을 만들기
- Azure 및 디스크에서 데이터베이스 복구
필수 구성 요소 및 제한 사항
- 원격 파일 공유에 파일이 포함된 데이터베이스가 있는 경우 오류 ID 104로 보호가 실패합니다. MABS는 원격 파일 공유에 대한 SQL Server 데이터 보호를 지원하지 않습니다.
- MABS는 원격 SMB 공유에 저장되는 데이터베이스를 보호할 수 없습니다.
- 가용성 그룹 복제본이 읽기 전용으로 구성되었는지 확인합니다.
- SQL Server의 Sysadmin 그룹에 NTAuthority\System 시스템 계정을 명시적으로 추가해야 합니다.
- 부분적으로 포함된 데이터베이스에 대해 대체 위치 복구를 수행하는 경우 대상 SQL 인스턴스에서 포함된 데이터베이스 기능을 사용하도록 설정했는지 확인해야 합니다.
- 파일 스트림 데이터베이스에 대해 대체 위치 복구를 수행하는 경우 대상 SQL 인스턴스에서 파일 스트림 데이터베이스 기능을 사용하도록 설정했는지 확인해야 합니다.
- SQL Server Always On에 대한 보호:
- 보호 그룹을 만드는 과정에서 조회를 실행하면 MABS가 가용성 그룹을 검색합니다.
- MABS는 장애 조치(failover)를 검색하고 데이터베이스를 계속 보호합니다.
- MABS는 SQL Server 인스턴스에 대해 다중 사이트 클러스터 구성을 지원합니다.
- Always On 기능을 사용하는 데이터베이스를 보호하는 경우 MABS에는 다음과 같은 제한 사항이 있습니다.
- MABS는 다음과 같은 백업 기본 설정에 따라 SQL Server에서 설정된 가용성 그룹의 백업 정책을 적용합니다.
- 보조 사용 - 주 복제본이 유일한 온라인 복제본인 경우를 제외하고는 보조 복제본에 대한 백업이 수행됩니다. 보조 복제본을 여러 개 사용할 수 있는 경우 백업 우선 순위가 가장 높은 노드가 백업을 위해 선택됩니다. 기본 복제본(replica)만 사용할 수 있는 경우 주 복제본(replica) 백업이 수행되어야 합니다.
- 보조만 - 주 복제본에 대해서는 백업이 수행되지 않습니다. 주 복제본이 유일한 온라인 복제본인 경우 백업이 수행되지 않습니다.
- 주 - 항상 주 복제본 백업이 수행됩니다.
- 임의의 복제본 - 가용성 그룹의 모든 가용성 복제본에 대해 백업을 수행할 수 있습니다. 백업할 노드는 각 노드의 백업 우선 순위에 따라 결정됩니다.
-
참고 항목
- 읽기 가능한 모든 복제본(주 복제본, 동기 보조 복제본, 비동기 보조 복제본)에서 백업을 수행할 수 있습니다.
- 백업에서 복제본이 제외된 경우(예: 복제본 제외가 사용하도록 설정되거나 복제본이 읽을 수 없음으로 표시된 경우) 해당 복제본은 어떤 옵션에서도 백업을 위해 선택되지 않습니다.
- 복제본을 여러 개 사용할 수 있으며 읽을 수 있는 경우 백업 우선 순위가 가장 높은 노드가 백업을 위해 선택됩니다.
- 선택한 노드에서 백업에 실패할 경우 백업 작업이 실패합니다.
- 원래 위치로 복구할 수 없습니다.
- MABS는 다음과 같은 백업 기본 설정에 따라 SQL Server에서 설정된 가용성 그룹의 백업 정책을 적용합니다.
- SQL Server 2014 이상 백업 문제:
- SQL Server 2014에는 Microsoft Azure Blob Storage에서 온-프레미스 SQL Server용 데이터베이스를 만드는 새로운 기능이 추가되었습니다. MABS를 사용하여 이 구성을 보호할 수 없습니다.
- SQL Always On 옵션의 “보조 사용” 백업 기본 설정에는 몇 가지 알려진 이슈가 있습니다. MABS는 항상 보조 복제본에서 백업을 수행합니다. 보조 복제본을 찾을 수 없는 경우 백업에 실패합니다.
시작하기 전에
Azure Backup Server를 설치하고 준비합니다.
백업 정책 만들기
SQL Server 데이터베이스를 Azure로 보호하는 백업 정책을 만들려면 다음 단계를 따릅니다.
Azure Backup Server에서 보호 작업 영역을 선택합니다.
도구 메뉴에서 새로 만들기를 선택하여 새 보호 그룹을 만듭니다.
Azure Backup Server가 보호 그룹을 만드는 방법을 안내하는 보호 그룹 마법사를 시작합니다. 다음을 선택합니다.
보호 그룹 유형 선택 블레이드에서 서버를 선택합니다.
그룹 구성원 선택 블레이드에서 사용 가능한 멤버 목록에는 다양한 데이터 원본이 표시됩니다. +를 선택하여 폴더를 확장하고 하위 폴더를 표시합니다. 확인란을 선택하여 항목을 선택합니다.
선택한 모든 항목은 선택한 멤버 목록에 표시됩니다. 보호할 서버 또는 데이터베이스를 선택한 후 다음을 선택합니다.
데이터 보호 방법 선택 블레이드에서 보호 그룹의 이름을 입력하고 온라인 보호 검사 원하는 상자를 선택합니다.
단기 목표 지정 블레이드에서 디스크에 백업 지점을 만드는 데 필요한 입력을 포함하고 다음을 선택합니다.
이 예제에서 보존 범위는 5일, 동기화 빈도는 백업 빈도인 15분입니다. 빠른 전체 Backup 을 오후 8시로 설정합니다.
참고 항목
표시된 예제는 매일 오후 8시에 전날의 오후 8시 백업 지점에서 수정된 데이터를 전송하여 백업 지점을 만듭니다. 이 프로세스를 빠른 전체 Backup이라고 합니다. 트랜잭션 로그는 15분마다 동기화됩니다. 오후 9시에 데이터베이스를 복구해야 하는 경우 마지막 고속 전체 백업 지점(이 예에서는 8PM)의 로그에서 지점이 생성됩니다.
디스크 할당 검토 블레이드에서 사용 가능한 전체 스토리지 공간 및 잠재적인 디스크 공간을 확인합니다. 다음을 선택합니다.
복제본 만들기 방법 선택에서, 첫 번째 복구 지점을 만들 방법을 선택합니다. 대역폭 정체를 방지하기 위해 초기 백업을 수동으로(오프 네트워크) 전송해도 되고 아니면 네트워크를 통해 전송해도 됩니다. 첫 번째 백업이 전송되기를 기다리기로 선택하는 경우 초기 전송의 시간을 지정할 수 있습니다. 다음을 선택합니다.
초기 백업 복사본은 프로덕션 서버(SQL Server 컴퓨터)에서 Azure Backup Server로 전체 데이터 원본(SQL Server 데이터베이스)을 전송해야 합니다. 이 데이터는 규모가 클 수 있으며 네트워크를 통한 데이터 전송이 대역폭을 초과할 수 있습니다. 이 때문에 대역폭 혼잡을 방지하기 위해 최초 백업을 수동(이동식 미디어 사용)으로 전송해도 되고, 네트워크를 통해 자동으로 전송(지정된 시간에)해도 됩니다.
초기 백업을 완료하면 백업의 나머지 부분은 초기 백업 복사본의 증분 백업입니다. 증분 백업은 크기가 작으며 네트워크를 통해 간편하게 전송될 수 있습니다.
일관성 확인을 실행하려는 경우 선택하고 다음을 선택합니다.
Azure Backup Server는 백업 시점의 무결성을 지속적으로 확인합니다. Azure Backup Server는 프로덕션 서버(이 시나리오에서는 SQL Server 컴퓨터)의 백업 파일과 해당 파일에 대한 백업 데이터의 체크섬을 계산합니다. 충돌이 있는 경우 Azure Backup Server에 백업된 파일이 손상된 것으로 가정합니다. Azure Backup Server는 체크섬 불일치에 해당하는 블록을 전송하여 백업된 데이터를 균형 있게 조정합니다. 일관성 검사는 많은 성능이 필요한 작업이므로 일관성 검사를 예약하거나 자동으로 실행할 수 있습니다.
데이터 원본에 온라인 보호를 지정하려면 데이터베이스를 Azure에 보호되도록 선택하고 다음을 선택합니다.
조직 정책에 맞게 백업 일정 및 보존 정책을 선택합니다.
이 예제에서는 백업이 하루에 한 번 오후 12시 및 오후 8시에 수행됩니다.
참고 항목
신속한 복구를 위해 디스크에 몇 가지 단기 복구 지점이 있는 것이 좋습니다. 이러한 복구 지점은 운영 복구에 사용됩니다. Azure는 높은 SLA 및 보장된 가용성이 있는 좋은 오프사이트 위치를 제공합니다.
모범 사례: 로컬 디스크 백업이 완료되면 Azure로 백업을 시작하도록 예약하면 항상 마지막 디스크 백업이 Azure로 복사됩니다.
보존 정책 일정을 선택합니다. 보존 정책이 작동하는 방법에 대한 자세한 내용은 Azure Backup을 사용하여 테이프 인프라 대체 문서에서 제공됩니다.
이 예에서는 다음이 적용됩니다.
- 백업은 하루에 한 번 오후 12시 및 오후 8시에 수행되며 180일 동안 유지됩니다.
- 토요일 오후 12시에 수행되는 백업은 104주 동안 유지됩니다.
- 마지막 주 토요일 오후 12시에 수행되는 백업은 60개월 동안 유지됩니다.
- 3월 마지막 주 토요일 오후 12시에 수행되는 백업은 10년 동안 유지됩니다.
다음을 선택하고 초기 백업 복사본을 Azure에 전송하기 위한 적절한 옵션을 선택합니다. 네트워크를 통해 자동으로를 선택할 수 있습니다.
요약 블레이드에서 정책 세부 정보를 검토한 후 그룹 만들기를 선택하여 워크플로를 완료합니다. 닫기를 선택하고 작업 영역 모니터링에서 작업 진행 상태를 모니터링할 수 있습니다.
주문형 백업 실행
복구 지점은 첫 번째 백업이 발생할 때만 만들어집니다. 백업 정책을 만든 후 스케줄러가 백업을 수행할 때까지 기다리지 않고 수동으로 복구 지점 만들기를 트리거할 수 있습니다.
SQL Server 데이터베이스의 주문형 백업을 실행하려면 다음 단계를 따릅니다.
복구 지점을 만들기 전에 보호 그룹 상태가 데이터베이스를 확인으로 표시될 때까지 대기합니다.
데이터베이스를 마우스 오른쪽 단추로 클릭하고 복구 지점 만들기를 선택합니다.
드롭다운 메뉴에서 온라인 보호를 선택하고 확인을 선택하여 Azure에서 복구 지점 만들기를 시작합니다.
모니터링 작업 영역에서 작업 진행률을 봅니다.
Azure에서 데이터베이스 복구
Azure에서 보호된 엔터티(SQL Server 데이터베이스)를 복구하려면 다음 단계를 따릅니다.
Azure Backup Server 관리 콘솔을 엽니다. 보호되는 서버를 볼 수 있는 복구 작업 영역으로 이동합니다. 필요한 데이터베이스로 이동합니다.(이 경우 ReportServer$ MSDPM2012) 온라인 지점으로 지정된 복구 시간을 선택합니다.
데이터베이스 이름을 마우스 오른쪽 단추로 클릭하고 복구를 선택합니다.
MABS에서는 복구 지점에 대한 세부 정보를 보여줍니다. 다음을 선택합니다. 데이터베이스를 덮어쓰려면 복구 형식 SQL Server의 원본 인스턴스에 복구를 선택합니다. 다음을 선택합니다.
이 예제에서 MABS는 다른 SQL Server 인스턴스 또는 독립 실행형 네트워크 폴더로 데이터베이스를 복구합니다.
복구 옵션 지정 블레이드에서 네트워크 대역폭 사용 제한과 같은 복구 옵션을 선택하여 복구에 사용되는 대역폭을 제한할 수 있습니다. 다음을 선택합니다.
요약 블레이드에 지금까지 제공된 모든 복구 구성이 표시됩니다. 복구를 선택합니다.
복구 상태는 복구 중인 데이터베이스를 표시합니다. 닫기를 선택하여 마법사를 닫고 모니터링 작업 영역에서 진행률을 볼 수 있습니다.
복구가 완료되면 복원된 데이터베이스는 애플리케이션과 일치합니다.