다음을 통해 공유


Azure에 SQL Server 관리 백업

Microsoft Azure에 대한 관리되는 백업을 SQL Server Azure Blob Storage 서비스에 대한 SQL Server 백업을 관리하고 자동화합니다. Microsoft Azure에 관리되는 백업을 SQL Server 사용하는 백업 전략은 데이터베이스의 보존 기간 및 트랜잭션 워크로드를 기반으로 합니다. Microsoft Azure에 대한 SQL Server Managed Backup 은 지정한 보존 기간 동안 지정 시간 복원을 지원합니다.
SQL Server Microsoft Azure에 대한 관리되는 백업은 데이터베이스 수준 또는 instance 수준에서 사용하도록 설정하여 SQL Server instance 모든 데이터베이스를 관리할 수 있습니다. SQL Server 온-프레미스 또는 Azure 가상 머신과 같은 호스트된 환경에서 실행될 수 있습니다. SQL Server Azure Virtual Machines 실행되는 SQL Server Microsoft Azure에 대한 관리되는 백업을 사용하는 것이 좋습니다.

Microsoft Azure에 SQL Server 관리되는 백업을 사용하여 SQL Server 백업 자동화의 이점

  • 현재 여러 데이터베이스에 대한 백업을 자동화하려면 백업 전략 개발, 사용자 지정 코드 작성, 백업 예약 등이 필요하지만, Microsoft Azure에 SQL Server Managed Backup을 사용하면 보존 기간 설정 및 스토리지 위치만 제공해야 합니다. Microsoft Azure에 대한 관리되는 백업을 SQL Server 백업을 예약, 수행 및 유지 관리합니다.

    SQL Server Microsoft Azure에 대한 관리되는 백업은 데이터베이스 수준에서 구성하거나 SQL Server instance 대한 기본 설정으로 구성할 수 있습니다. Microsoft Azure에 SQL Server Managed Backup을 사용하여 백업을 자동화하면 다음과 같은 이점이 있습니다.

    • 인스턴스 수준에서 기본값을 설정하면 이후 만들어진 모든 데이터베이스에 이러한 설정을 적용할 수 있으므로 새 데이터베이스가 백업되지 않고 데이터가 손실될 위험을 제거할 수 있습니다.

    • Microsoft Azure에 SQL Server Managed Backup을 사용하도록 설정하고 데이터베이스 수준에서 보존 기간을 설정하는 옵션을 사용하면 instance 수준에서 설정된 기본 설정을 재정의할 수 있습니다. 이렇게 하면 특정 데이터베이스에 대한 복구 가능성을 더욱 세부적으로 제어할 수 있습니다.

  • Microsoft Azure에 대한 SQL Server Managed Backup을 사용하면 데이터베이스에 대한 백업의 유형 또는 빈도를 지정할 필요가 없습니다. 보존 기간을 지정하면 Microsoft Azure에 대한 관리되는 백업이 Azure Blob Storage 서비스에 백업을 저장하는 데이터베이스의 백업 유형과 빈도를 결정하는 SQL Server. Microsoft Azure에 대한 관리되는 백업을 SQL Server 백업 전략을 만드는 데 사용하는 조건 집합에 대한 자세한 내용은 이 항목의 구성 요소 및 개념 섹션을 참조하세요.

  • 암호화를 사용하도록 구성된 경우 백업 데이터에 대한 추가 보안이 적용됩니다. 자세한 내용은 Backup 암호화를 참조하세요.

SQL Server 백업에 Azure Blob Storage를 사용하는 이점에 대한 자세한 내용은 Azure Blob Storage Service를 사용하여 백업 및 복원 SQL Server 참조하세요.

용어 및 정의

Microsoft Azure에 대한 SQL Server Managed Backup

데이터베이스 백업을 자동화하고 보존 기간에 따라 백업을 관리하는 SQL Server 기능입니다.

재방문 주기 기간
보존 기간은 Microsoft Azure에 관리되는 백업을 SQL Server 데이터베이스를 지정된 시간 내에 특정 시점으로 복구하기 위해 스토리지에 보존해야 하는 백업 파일을 결정하는 데 사용됩니다. 지원되는 값 범위는 1-30일입니다.

로그 체인
로그 백업의 연속된 시퀀스를 로그 체인이라고 합니다. 로그 체인은 데이터베이스의 전체 백업으로 시작합니다.

요구 사항, 개념 및 구성 요소

사용 권한

Transact-SQL은 Microsoft Azure에 대한 SQL Server Managed Backup을 구성하고 모니터링하는 데 사용되는 기본 인터페이스입니다. 일반적으로 구성 저장 프로시저를 실행하려면 ALTER ANY CREDENTIAL 권한 EXECUTE 으로 데이터베이스 역할을 db_backupoperatorsp_delete_backuphistory 저장 프로시저에 대한 권한이 필요합니다. 일반적으로 정보를 검토하는 데 사용되는 저장 프로시저 및 함수는 저장 프로시저에 대한 Execute 사용 권한과 함수에 대한 Select 사용 권한이 각각 필요합니다.

필수 조건

사전 요구 사항:

Azure Storage 서비스는 Microsoft Azure에 대한 관리되는 백업을 SQL Server 백업 파일을 저장하는 데 사용됩니다. Azure Storage 계정을 만들기 위한 개념, 구조 및 요구 사항은 URL에 백업 SQL Server 항목의 주요 구성 요소 및 개념 소개 섹션에 자세히 설명되어 있습니다.

SQL 자격 증명 은 Azure Storage 계정에 인증하는 데 필요한 정보를 저장하는 데 사용됩니다. SQL 자격 증명 개체는 계정 이름 및 액세스 키 정보를 저장합니다. 자세한 내용은 URL에 백업 SQL Server 항목의 주요 구성 요소 및 개념 소개 섹션 참조하세요. Azure Storage 인증 정보를 저장하는 SQL 자격 증명을 만드는 방법에 대한 연습은 단원 2: SQL Server 자격 증명 만들기를 참조하세요.

개념 및 주요 구성 요소

Microsoft Azure에 대한 SQL Server 관리되는 백업은 백업 작업을 관리하는 기능입니다. msdb 데이터베이스에 메타데이터를 저장하고 시스템 작업을 사용하여 전체 데이터베이스 및 트랜잭션 로그 백업을 작성합니다.

구성 요소

Transact-SQL은 Microsoft Azure에 대한 SQL Server Managed Backup과 상호 작용하는 주 인터페이스입니다. 시스템 저장 프로시저는 Microsoft Azure에 대한 SQL Server Managed Backup을 사용하도록 설정하고 구성 및 모니터링하는 데 사용됩니다. 시스템 함수는 기존 구성 설정, 매개 변수 값 및 백업 파일 정보를 검색하는 데 사용됩니다. 확장 이벤트는 오류 및 경고를 노출하는 데 사용됩니다. 경고 메커니즘은 SQL 에이전트 작업 및 SQL Server 정책 기반의 관리를 통해 설정됩니다 다음은 Microsoft Azure에 대한 SQL Server Managed Backup과 관련된 개체와 해당 기능에 대한 설명 목록입니다.

PowerShell cmdlet도 Microsoft Azure에 대한 SQL Server Managed Backup을 구성하는 데 사용할 수 있습니다. SQL Server Management Studio는 Microsoft Azure에 대한 SQL Server Managed Backup 에서 데이터베이스 복원 태스크를 사용하여 만든 백업 복원을 지원합니다.

시스템 개체 Description
MSDB Microsoft Azure에 대한 SQL Server Managed Backup에서 만든 모든 백업에 대한 메타데이터, 백업 기록을 저장합니다.
smart_admin.set_db_backup(Transact-SQL) 데이터베이스에 대해 Microsoft Azure에 SQL Server Managed Backup을 사용하도록 설정하고 구성하기 위한 시스템 저장 프로시저입니다.
smart_admin.set_instance_backup(Transact-SQL) 기본 설정을 사용하도록 설정하고 구성하기 위한 시스템 저장 프로시저는 SQL Server instance Microsoft Azure에 대한 관리되는 백업을 SQL Server.
smart_admin.sp_ backup_master_switch(Transact-SQL) Microsoft Azure에 대한 관리되는 백업을 SQL Server 일시 중지하고 다시 시작하는 시스템 저장 프로시저입니다.
smart_admin.sp_set_parameter(Transact-SQL) Microsoft Azure에 대한 SQL Server 관리되는 백업에 대한 모니터링을 사용하도록 설정하고 구성하는 시스템 저장 프로시저입니다. 예제: 알림을 위한 메일 설정, 확장 이벤트 설정입니다.
smart_admin.sp_backup_on_demand(Transact-SQL) 로그 체인을 중단하지 않고 Microsoft Azure에 SQL Server Managed Backup을 사용할 수 있도록 설정된 데이터베이스에 대한 임시 백업을 수행하는 데 사용되는 시스템 저장 프로시저입니다.
smart_admin.fn_backup_db_config(TRANSACT-SQL) Microsoft Azure에 현재 SQL Server Managed Backup을 반환하는 시스템 함수와 데이터베이스 또는 instance 모든 데이터베이스에 대한 구성 값이 상태.
smart_admin.fn_is_master_switch_on(Transact-SQL) 마스터 스위치의 상태를 반환하는 시스템 함수입니다.
smart_admin.sp_get_backup_diagnostics(Transact-SQL) 확장 이벤트가 기록한 이벤트를 반환하는 데 사용되는 시스템 저장 프로시저입니다.
smart_admin.fn_get_parameter(Transact-SQL) 경고의 메일 설정 및 모니터링 등 백업 시스템 설정의 현재 값을 반환하는 시스템 함수입니다.
smart_admin.fn_available_backups(TRANSACT-SQL) 지정한 데이터베이스 또는 인스턴스의 모든 데이터베이스에 대해 사용 가능한 백업을 검색하는 데 사용되는 저장 프로시저입니다.
smart_admin.fn_get_current_xevent_settings(Transact-SQL) 현재 확장 이벤트 설정을 반환하는 시스템 함수입니다.
smart_admin.fn_get_health_status(Transact-SQL) 지정한 기간 동안 확장 이벤트에서 기록한 집계된 오류 수를 반환하는 시스템 함수입니다.
Azure에 SQL Server 관리 백업 모니터링 Microsoft Azure에 대한 SQL Server 관리 백업에 대한 모니터링, 이메일 오류 및 경고 알림, SQL Server 정책 기반 관리를 위한 확장 이벤트입니다.

백업 전략

Microsoft Azure에 관리되는 백업을 SQL Server 사용하는 백업 전략:

예약된 백업 유형 및 백업 주기는 데이터베이스 작업을 기준으로 결정됩니다. 보존 기간 설정은 보존 기간 내 지정 시간에 데이터베이스를 복구하는 기능과 스토리지에 보존할 백업 파일의 시간을 결정하는 데 사용됩니다.

백업 컨테이너 및 파일 이름 지정 규칙

Microsoft Azure에 대한 관리되는 백업을 SQL Server 가용성 데이터베이스를 제외한 모든 데이터베이스에 SQL Server 인스턴스 이름을 사용하여 Azure Storage 컨테이너의 이름을 지정합니다. 가용성 데이터베이스의 경우 가용성 그룹 GUID를 사용하여 Azure Storage 컨테이너의 이름을 지정합니다.

비가용성 데이터베이스에 대한 백업 파일의 이름은 다음 규칙을 사용하여 이름이 지정됩니다. 이름은 데이터베이스 이름의 처음 40자, '-'가 없는 데이터베이스 GUID 및 타임스탬프를 사용하여 만들어집니다. 밑줄 문자는 구분 기호로 세그먼트 사이에 삽입됩니다. .bak 파일 확장명은 전체 백업에 사용되고 .log 파일 확장명은 로그 백업에 사용됩니다. 가용성 그룹 데이터베이스의 경우 위에서 설명한 파일 명명 규칙 외에도 가용성 그룹 데이터베이스 GUID가 40자의 데이터베이스 이름 뒤에 추가됩니다. 가용성 그룹 데이터베이스 GUID 값은 sys.databases의 group_database_id 값입니다.

전체 데이터베이스 백업: Microsoft Azure 에이전트에 대한 SQL Server 관리되는 백업은 다음 중 어느 것이라도 해당하는 경우 전체 데이터베이스 백업을 예약합니다.

  • 데이터베이스에 처음으로 Microsoft Azure에 대한 SQL Server Managed Backup 이 설정되거나 인스턴스 수준에서 기본 설정과 함께 Microsoft Azure에 대한 SQL Server Managed Backup 이 설정된 경우

  • 마지막 전체 데이터베이스 백업 이후 증가한 로그가 1GB 이상인 경우

  • 마지막 전체 데이터베이스 백업 이후 최대 시간 간격인 일주일이 지난 경우

  • 로그 체인이 끊어진 경우. Microsoft Azure에 대한 SQL Server Managed Backup 은 주기적으로 백업 파일의 첫 번째 LSN과 마지막 LSN을 비교하여 로그 체인의 변경 여부를 확인합니다. 이유에 관계없이 로그 체인이 끊어진 경우 Microsoft Azure에 대한 SQL Server Managed Backup 이 전체 데이터베이스 백업을 예약합니다. 로그 체인이 끊어지는 가장 일반적인 이유는 Transact-SQL을 사용하거나 SQL Server Management Studio의 백업 태스크를 통해 실행되는 백업 명령 때문입니다. 그 외에 실수로 백업 로그 파일을 삭제하거나 백업을 덮어쓰는 경우가 있을 수 있습니다.

트랜잭션 로그 백업: Microsoft Azure에 대한 SQL Server 관리되는 백업은 다음 중 어느 것이라도 해당하는 경우 로그 백업을 예약합니다.

  • 로그 백업 기록을 찾을 수 없는 경우. 이는 Microsoft Azure에 대한 SQL Server Managed Backup 이 처음으로 설정된 경우 발생합니다.

  • 사용된 트랜잭션 로그 공간이 5MB 이상인 경우

  • 마지막 로그 백업 후 최대 시간 간격인 2시간이 경과한 경우

  • 트랜잭션 로그 백업이 전체 데이터베이스 백업보다 뒤처지는 경우. 목표는 로그 체인이 전체 백업을 앞서도록 유지하는 것입니다.

보존 기간 설정

백업을 사용하도록 설정할 때는 일 단위로 보존 기간을 설정해야 합니다. 최솟값은 1일이고 최댓값은 30일입니다.

Microsoft Azure에 대한 SQL Server Managed Backup 은 지정한 시간 내 지정 시간에 복구하는 기능을 평가하여 보존해야 할 백업 파일과 삭제할 백업 파일을 결정합니다. 백업의 backup_finish_date는 보존 기간 설정에서 지정한 시간을 확인하고 일치시키는 데 사용됩니다.

중요 고려 사항

Microsoft Azure에 대한 관리되는 백업 SQL Server 미치는 영향을 이해하는 데 중요한 몇 가지 고려 사항이 있습니다. 다음과 같습니다.

  • 특정 데이터베이스의 경우 기존의 전체 데이터베이스 백업 작업이 실행 중이면 Microsoft Azure에 대한 SQL Server Managed Backup 는 현재 작업이 완료될 때까지 기다린 다음 동일한 데이터베이스에 대해 다른 전체 데이터베이스 백업을 수행합니다. 마찬가지로 한 번에 한 트랜잭션 로그 백업만 실행할 수 있습니다. 그러나 전체 데이터베이스 백업 및 트랜잭션 로그 백업은 동시에 실행할 수 있습니다. 실패는 확장 이벤트로 기록됩니다.

  • 10개 이상의 전체 데이터베이스 백업이 동시에 예약된 경우 확장 이벤트의 디버그 채널을 통해 경고가 발생합니다. Microsoft Azure에 대한 SQL Server Managed Backup 은 백업이 필요한 나머지 데이터베이스의 우선 순위 큐를 관리합니다.

지원 제한 사항

다음은 SQL Server 2014와 관련된 몇 가지 제한 사항입니다.

  • microsoft Azure 에이전트에 대한 SQL Server 관리되는 백업은 데이터베이스 백업만 지원합니다. 전체 및 로그 백업. 파일 백업 자동화는 지원되지 않습니다.

  • SQL Server Microsoft Azure에 대한 관리되는 백업 작업은 현재 Transact-SQL을 사용하여 지원됩니다. 모니터링 및 문제 해결은 확장 이벤트를 사용하여 수행됩니다. PowerShell 및 SMO 지원은 SQL Server 인스턴스의 보존 기간 기본 설정 및 스토리지 구성, 그리고 SQL Server 정책 기반 관리 정책을 기반으로 한 백업 상태 및 전체 상태 모니터링으로 제한됩니다.

  • 시스템 데이터베이스는 지원되지 않습니다.

  • Azure Blob Storage 서비스는 유일하게 지원되는 백업 스토리지 옵션입니다. 디스크 또는 테이프 백업은 지원되지 않습니다.

  • 현재 Azure Storage의 페이지 Blob에 허용되는 최대 파일 크기는 1TB입니다. 1TB보다 큰 백업 파일은 실패합니다. 이러한 상황을 방지하려면 대규모 데이터베이스의 경우 Microsoft Azure에 SQL Server Managed Backup을 설정하기 전에 압축을 사용하고 백업 파일 크기를 테스트하는 것이 좋습니다. Transact-SQL 문을 사용하여 BACKUP TO URL 로컬 디스크에 백업하거나 Azure Storage에 수동으로 백업하여 테스트할 수 있습니다. 자세한 내용은 URL에 대한 SQL Server Backup을 참조하세요.

  • 복구 모델: 전체 또는 대량 로그 모델로 설정된 데이터베이스만 지원됩니다. 단순 복구 모델로 설정된 데이터베이스는 지원되지 않습니다.

  • Microsoft Azure에 대한 SQL Server Managed Backup 을 구성한 경우 일부 제한 사항이 있을 수 있습니다. 자세한 내용은 SQL Server 관리되는 Azure 백업: 상호 운용성 및 공존을 참조하세요.

관련 작업

작업 설명 항목
데이터베이스에 대해 Microsoft Azure에 SQL Server 관리되는 백업을 구성하거나, instance 수준에서 기본 설정을 구성하고, instance 또는 데이터베이스 수준에서 Microsoft Azure에 SQL Server 관리되는 백업을 사용하지 않도록 설정하거나, Microsoft Azure에 SQL Server Managed Backup을 일시 중지하고 다시 시작하는 등의 기본 작업입니다. Azure에 SQL Server 관리 백업 - 보존 및 스토리지 설정
자습서: Microsoft Azure에 대한 관리되는 백업을 SQL Server 구성하고 모니터링하는 단계별 지침입니다. Azure에 SQL Server 관리 백업 설정
자습서: 가용성 그룹의 데이터베이스에 대해 Microsoft Azure에 대한 관리되는 백업 SQL Server을 구성하고 모니터링하는 단계별 지침입니다. 가용성 그룹의 Azure에 SQL Server 관리 백업 설정
Microsoft Azure에 대한 관리되는 백업을 SQL Server 모니터링과 관련된 도구 및 개념 및 작업. Azure에 SQL Server 관리 백업 모니터링
Microsoft Azure에 대한 관리되는 백업을 SQL Server 문제를 해결하는 도구 및 단계입니다. Azure에 SQL Server 관리 백업 문제 해결

참고 항목

Azure Blob Storage Service로 SQL Server 백업 및 복원
URL에 대한 SQL Server 백업
Azure에 SQL Server 관리 백업: 상호 운용성 및 공존성
Azure에 SQL Server 관리 백업 문제 해결