Azure Backup Azure Virtual Machines(VM)에서 실행되는 SQL Server 백업하는 스트림 기반의 특수 솔루션을 제공합니다. 이 솔루션은 인프라 없는 백업, 장기 보존 및 중앙 관리라는 Azure Backup의 이점에 부합합니다. 또한 SQL Server를 위해 특별히 다음과 같은 추가 이점을 제공합니다.
- 모든 백업 유형을 지원하는 워크로드 인식 백업 - 전체, 차등 및 로그
- 로그 백업을 빈번히 수행하여 15분 RPO(복구 지점 목표) 달성
- 지정 시간 복원 최대 1초
- 개별 데이터베이스 수준 백업 및 복원
현재 지원되는 백업 및 복원 시나리오를 보려면 지원 매트릭스를 참조하세요. 일반적인 질문은 자주 묻는 질문을 참조하세요.
Azure VM의 SQL 인스턴스에 대한 스냅샷 백업(미리 보기)
Azure Backup 큰 데이터베이스의 성능을 향상시키는 스냅샷 기반 SQL 백업 솔루션을 제공합니다. 빠른 복원 및 빈번한 로그 백업에 디스크 스냅샷을 사용하여 데이터 손실을 최소화할 수 있으므로 RTO(복구 시간 목표)를 낮추고 RPO(복구 지점 목표)를 개선할 수 있습니다.
참고
SQL Server 인스턴스에 대한 스냅샷 백업은 미리 보기로 제공됩니다. 스냅샷 기반 백업을 사용하면 성능이 개선된 대규모 데이터베이스를 보호하고 빠른 복구 계층에서 더 빠른 복원을 달성할 수 있습니다.
스냅샷 백업은 큰 데이터베이스를 백업하는 동안 다음과 같은 이점을 제공합니다.
인스턴스 수준 스냅샷: SQL 인스턴스 수준에서 스냅샷 백업을 만들고 단일 작업에서 여러 데이터베이스를 선택합니다. 필요에 따라 전체 인스턴스 또는 개별 데이터베이스를 복원합니다.
원본 서버에 미치는 영향 최소화: Azure Backup은 애플리케이션 일관성 스냅샷을 캡처하기 위해 데이터베이스를 잠시 정지 상태로 전환합니다. 데이터베이스는 몇 초 동안만 정지되지만 작동 계층의 스냅샷 생성 및 가용성은 몇 분 내에 완료됩니다. 스트리밍 백업과 달리 원본 컴퓨터의 리소스는 오랫동안 소비되지 않습니다.
비용 효율성: 증분 스냅샷을 사용하여 스토리지 비용을 최적화합니다.
향상된 RTO: 인스턴트/운영 계층에서 더 빠른 복원을 사용합니다.
낮은 RPO: 로그 백업을 스냅샷과 결합하여 더 낮은 RPO를 달성하고 지정 시간 복원을 사용하도록 설정합니다.
지원 매트릭스의 스냅샷을 사용하여 SQL 백업에 지원되는 시나리오 및 제한 사항에 대해 알아봅니다. Azure 포털을 사용하여 Azure VM에서 SQL Server 인스턴스 스냅샷을 백업하려면 이 문서 참조하세요.
SQL Server 데이터베이스에 대한 백업 프로세스
이 솔루션은 SQL 네이티브 API를 사용하여 SQL 데이터베이스의 백업을 수행합니다.
보호하려는 SQL Server VM을 지정하고 데이터베이스를 쿼리하면 Azure Backup 서비스는 이름
AzureBackupWindowsWorkload확장으로 VM에 워크로드 백업 확장을 설치합니다.이 확장은 코디네이터 및 SQL 플러그 인으로 구성됩니다. 코디네이터는 백업, 백업 및 복원 구성과 같은 다양한 작업에 대한 워크플로를 트리거하는 역할을 담당하지만 플러그 인은 실제 데이터 흐름을 담당합니다.
이 VM에서 데이터베이스를 검색할 수 있도록 Azure Backup은
NT SERVICE\AzureWLBackupPluginSvc계정을 만듭니다. 이 계정은 백업 및 복원에 사용되며 SQL sysadmin 권한이 필요합니다.NT SERVICE\AzureWLBackupPluginSvc계정은 Virtual Service Account이므로 암호 관리가 필요하지 않습니다. Azure Backup은 데이터베이스 검색/조회에NT AUTHORITY\SYSTEM계정을 활용하므로, 이 계정은 SQL에서 공용 로그인이어야 합니다. Azure Marketplace에서 SQL Server VM을 만들지 않은 경우 UserErrorSQLNoSysadminMembership 오류가 발생할 수 있습니다. 오류 메시지가 나타나면 다음 지침을 따릅니다.선택한 데이터베이스에서 구성 보호를 트리거하면 백업 서비스가 백업 일정과 기타 정책 세부 정보를 사용하여 코디네이터를 설정하며, 이 경우 확장이 VM에 로컬로 캐시합니다.
예약된 시간에 코디네이터는 플러그 인과 통신하고 VDI(가상 디바이스 인터페이스)를 사용하여 SQL 서버에서 백업 데이터를 스트리밍하기 시작합니다.
플러그인은 데이터를 직접 Recovery Services 볼트로 전송하여 준비 위치가 필요 없게 합니다. Azure Backup 서비스는 데이터를 암호화하고 스토리지 계정에 저장합니다.
데이터 전송이 완료되면 코디네이터가 백업 서비스를 사용하여 커밋을 확인합니다.
SQL Server 인스턴스 스냅샷에 대한 백업 프로세스
Azure Backup 관리 디스크 증분 스냅샷을 사용하여 Azure VM에서 SQL 데이터베이스를 보호합니다. 백업 정책은 스냅샷 생성, 보존 및 로그 백업 동작을 제어하여 빠른 복원 및 특정 시점 복구를 사용하도록 설정합니다.
백업 및 복원 흐름은 다음 작업을 포함하는 Azure Backup 수행되는 논리적 엔드 투 엔드 작업 시퀀스를 간략하게 설명합니다.
사용자 정의 백업 정책에 따라 관리 디스크 증분 스냅샷을 만듭니다. 현재 Azure Backup 서비스는 6시간 이상마다 하나의 스냅샷을 지원합니다. 15분 이상 로그 백업을 구성할 수 있습니다.
SQL 인스턴스 수준에서 스냅샷 백업을 만듭니다. 스냅샷 작업당 최대 12개의 데이터베이스를 선택할 수 있습니다.
결합된 데이터베이스 집합의 기본 디스크를 스냅하여 선택한 모든 데이터베이스에서 애플리케이션 일치 스냅샷을 캡처합니다.
사용자 정의 기간(최대 7일)동안 지정된 리소스 그룹 내의 Azure 구독에 스냅샷을 유지합니다. 그런 다음 Azure Backup은 구성된 정책에 따라 장기 보존을 위해 데이터를 Recovery Services 자격 증명 모음으로 이동하여 백업 볼트에 저장된 백업으로 보존합니다.
데이터베이스 수준의 로그 백업을 볼트로 스트리밍합니다. 복원하는 동안 서비스는 스냅샷을 대체 VM으로 복원하고 로그 백업을 적용하여 지정 시간 복구를 달성합니다.
Azure 포털(미리 보기) 사용하여 Azure VM에서 SQL Server 인스턴스 스냅샷을 백업하는 방법을 알아봅니다.
SQL Server 백업을 위한 필수 구성 요소
SQL Server 백업을 시작하기 전에 다음 필수 구성 요소를 검토합니다.
- Azure에서 실행되는 SQL Server 인스턴스가 있는지 확인합니다. SQL Server 인스턴스를 마켓플레이스에 빠르게 만들 수 있습니다.
- 기능 고려 사항 및 시나리오 지원을 검토합니다.
- 이 시나리오에 대한 일반적인 질문을 검토합니다.
VM 권한 설정
SQL Server 검색을 실행하면 Azure Backup 다음 작업을 수행합니다.
- AzureBackupWindowsWorkload 확장을 추가합니다.
- 가상 머신에서 에서 데이터베이스를 검색하기 위해 NT SERVICE\AzureWLBackupPluginSvc 계정을 만듭니다. 이 계정은 백업 및 복원에 사용되며 SQL sysadmin 권한이 필요합니다.
- VM에서 실행 중인 데이터베이스를 검색하고 Azure Backup은 NT AUTHORITY\SYSTEM 계정을 사용합니다. 이 계정은 SQL에서 공용 로그인이어야 합니다.
Azure Marketplace에서 SQL Server VM을 만들지 않았거나 SQL 2008 또는 2008 R2를 사용 중인 경우, UserErrorSQLNoSysadminMembership 오류가 발생할 수 있습니다.
Windows 2008 R2에서 실행되는 SQL 2008 및 2008 R2 권한을 부여하려면 this 섹션 참조하세요.
다른 모든 버전의 경우 다음 단계를 사용하여 권한을 할당합니다.
SQL Server sysadmin 권한이 있는 계정을 사용하여 SSMS(SQL Server Management Studio 로그인합니다. 특별한 사용 권한이 필요하지 않으면 Windows 인증이 작동해야 합니다.
SQL ServerSecurity/Logins 폴더를 엽니다.
Logins 폴더를 마우스 오른쪽 단추로 클릭하고 새 로그인을 선택합니다. 로그인 - 새로 만들기에서 검색을 선택합니다.
Windows 가상 서비스 계정 NT SERVICE\AzureWLBackupPluginSvc는 가상 머신 등록 및 SQL 검색 단계 중에 만들어졌습니다. 선택할 개체 이름 입력에 표시된 대로 계정 이름을 입력합니다. 이름 확인을 선택하여 이름을 확인합니다. 확인을 선택합니다.
서버 역할에서 sysadmin 역할이 선택되어 있는지 확인합니다. 확인을 선택합니다. 이제 필요한 권한이 있어야 합니다.
SQL Server 인스턴스가 AG(Always-On 가용성 그룹)의 일부인 경우 NT AUTHORITY\SYSTEM 계정에 VIEW SERVER STATE 권한이 사용하도록 설정되어 있는지 확인합니다.
데이터베이스를 Recovery Services 볼트에 연결하십시오. Azure Portal의 보호된 서버 목록에서 오류 상태인 서버를 마우스 오른쪽 단추로 클릭하고 >DB 다시 검색을 클릭합니다.
알림 영역에서 진행률을 확인합니다. 선택한 데이터베이스가 발견되면 성공 메시지가 표시됩니다.
참고
SQL Server에 여러 개의 SQL Server 인스턴스가 설치되어 있는 경우 NT Service\AzureWLBackupPluginSvc 계정에 대한 sysadmin 권한을 모든 SQL 인스턴스에 추가해야 합니다.
SQL 2008 및 SQL 2008 R2에 대한 SQL sysadmin 권한 할당
NT AUTHORITY\SYSTEM 및 NT Service\AzureWLBackupPluginSvc 로그인을 SQL Server 인스턴스에 추가하려면 다음 단계를 수행합니다.
개체 탐색기에서 SQL Server 인스턴스 이동합니다.
보안>로그인으로 이동합니다.
로그인을 마우스 오른쪽 단추로 클릭하고 을 선택합니다.

일반 탭으로 이동하여 로그인 이름으로 NT AUTHORITY\SYSTEM을 입력합니다.
서버 역할 탭으로 이동하여 공용 및 sysadmin 역할을 선택합니다.
상태로 이동하여 데이터베이스 엔진에 연결할 수 있는 사용 권한 부여를 선택한 다음 로그인에 대해 [사용]을 선택합니다.
확인을 선택합니다.
NT Service\AzureWLBackupPluginSvc 로그인을 SQL Server 인스턴스 추가하려면 1-7 단계를 반복합니다.
로그인이 이미 있는 경우 해당 로그인에 sysadmin 서버 역할이 있는지 확인하고 상태에서 데이터베이스 엔진에 연결할 수 있는 권한에 대해 부여 옵션이 설정되어 있으며 로그인이 사용으로 설정되어 있는지 확인합니다.
권한을 부여한 후 Azure Portal에서 Recovery Services 자격 증명 모음>Manage>Backup Infrastructure>Workload in Azure VM로 이동하여 DB를 다시 검색합니다.
또는 관리자 모드에서 다음 cmdlet을 실행하여 권한 할당을 자동화할 수 있습니다.
참고
인스턴스 이름은 MSSQLSERVER로 기본 설정됩니다. 필요한 경우 스크립트에서 인스턴스 이름 인수를 변경합니다.
param(
[Parameter(Mandatory=$false)]
[string] $InstanceName = "MSSQLSERVER"
)
if ($InstanceName -eq "MSSQLSERVER")
{
$fullInstance = $env:COMPUTERNAME # In case it's the default SQL Server Instance
}
else
{
$fullInstance = $env:COMPUTERNAME + "\" + $InstanceName # In case of named instance
}
try
{
sqlcmd.exe -S $fullInstance -Q "sp_addsrvrolemember 'NT Service\AzureWLBackupPluginSvc', 'sysadmin'" # Adds login with sysadmin permission if already not available
}
catch
{
Write-Host "An error occurred:"
Write-Host $_.Exception|format-list -force
}
try
{
sqlcmd.exe -S $fullInstance -Q "sp_addsrvrolemember 'NT AUTHORITY\SYSTEM', 'sysadmin'" # Adds login with sysadmin permission if already not available
}
catch
{
Write-Host "An error occurred:"
Write-Host $_.Exception|format-list -force
}
Azure VM에서 SQL Server 인스턴스의 스냅샷 백업 가격 책정
Azure VM 스냅샷에서 SQL을 백업하면 다음과 같은 요금이 발생합니다.
Recovery Services 자격 증명 모음에 저장된 스냅샷 백업은 Azure Backup 가격 책정을 기준으로 요금이 부과됩니다.
보호된 인스턴스 요금과 자격 증명 모음 스토리지 비용 외에도 Azure Backup은 운영 계층의 스냅샷 스토리지에 대해 추가 요금을 부과합니다.
관리 디스크 스냅샷은 구독에 유지되는 기간 동안 Managed Disk 스냅샷 가격 책정 에 따라 요금이 부과됩니다.
다음 단계
- 동시 백업을 구성합니다.
- Azure VM에서 실행되는 SQL Server 데이터베이스를 백업합니다.
- Azure 포털(미리 보기) 사용하여 Azure VM에서 SQL Server 인스턴스 스냅샷을 백업합니다.
- 백업된 SQL Server 데이터베이스를 복원합니다.
- 데이터베이스 및 인스턴스 스냅샷(미리 보기) 백업을 SQL Server 관리 및 모니터링.