Share via


자동 백업 관리 - Azure Arc 지원 SQL Server(프리뷰)

적용 대상:SQL Server

SQL Server용 Azure 확장은 Azure Arc 지원 SQL Server 인스턴스의 시스템 및 사용자 데이터베이스에 대해 자동으로 백업할 수 있습니다.

이 문서에서는 그 방법을 설명합니다.

  • 기본 제공 자동 백업 사용
  • 백업 일정 구성

참고 항목

미리 보기 기능으로, 이 문서에 제시된 기술에는 Microsoft Azure 미리 보기에 대한 보충 사용 약관이 적용됩니다.

최신 업데이트는 릴리스 정보 - Azure Arc 지원 SQL Server에서 사용할 수 있습니다.

백업 파일은 SQL 인스턴스의 기본 백업 위치에 저장됩니다.

Azure Portal 또는 az CLI를 통해 자동 백업을 사용하도록 설정할 수 있습니다.

자동 백업을 사용하도록 설정하려면 보존 일수를 영이 아닌 값으로 설정합니다.

지원되는 라이선스 유형

자동 백업은 Software Assurance, SQL 구독 또는 종량제 라이선스에만 사용할 수 있습니다. 자세한 내용은 라이선스 유형에 따른 기능 사용 가능성을 참조하세요.

백업 빈도 및 보존일 수

자동 백업에 대해 다음 두 가지 속성을 구성할 수 있습니다.

  • 보존일 수 - 백업 파일을 보존할 일 수입니다. 1에서 35 사이의 숫자를 사용합니다. 백업 보존 날짜를 0으로 설정하면 백업 정책이 유지되더라도 자동 백업이 비활성화되고 백업이 되지 않습니다.
  • 백업 일정 - 전체, 차등 및 트랜잭션 로그 백업을 해야 하는 일정입니다. 백업 유형에 따라 달라집니다.
    • 전체 백업: 매일 또는 매주
    • 차등 백업: 12시간마다 또는 24시간마다
    • 트랜잭션 로그 백업: 5분씩 증가.

기본 일정에 따라 백업을 작동할 수도 있습니다.

  • 보존 기간: 7일
  • 전체 백업: 7일마다
  • 차등 백업: 24시간마다
  • 트랜잭션 로그 백업: 5분마다

백업 일정 수준

백업 일정은 다음과 같이 가능합니다.

데이터베이스 및 인스턴스 수준 백업 일정이 모두 설정된 경우 데이터베이스 수준 일정이 인스턴스 수준 백업 일정보다 우선합니다. 데이터베이스 수준 백업 일정을 삭제하면 인스턴스 수준 백업 일정이 적용됩니다.

권한 할당

Arc 지원 SQL Server용 Azure 확장 내의 백업 서비스는 [NT AUTHORITY\SYSTEM] 계정을 사용하여 백업을 합니다. 최소 권한으로 Arc 지원 SQL Server를 운영하는 경우 로컬 Windows 계정인 [NT Service\SQLServerExtension]이 백업을 합니다.

참고 항목

Azure 익스텐션이 버전 1.1.2594.118(2024년 2월 릴리스) 이상인 경우 최소 권한 모드가 앞으로 몇 달 안에 기본 모드가 됩니다.

SQL Server 버전 1.1.2504.99 이상에 대해 Azure 확장을 사용하는 경우 필요한 권한이 [NT AUTHORITY\SYSTEM]에 자동으로 부여됩니다. 권한을 수동으로 할당할 필요가 없습니다.

이전 확장의 경우에만 아래 단계에 따라 [NT AUTHORITY\SYSTEM] 계정에 권한을 할당합니다.

참고 항목

이 요구 사항은 프리뷰 릴리스에 적용됩니다.

  1. 로그인에 [NT AUTHORITY\SYSTEM] 계정을 추가하고 서버 수준에서 dbcreator 서버 역할의 멤버로 만듭니다. 다음 Transact-SQL을 실행하여 이 계정에 추가합니다.

    USE master;
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE = [master];
    GO
    ALTER SERVER ROLE [dbcreator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  2. 사용자에 [NT AUTHORITY\SYSTEM] 계정을 추가하고 master, model, msdb 및 각 사용자 데이터베이스에서 db_backupoperator 역할의 멤버로 만듭니다.

    예시:

    CREATE USER [NT AUTHORITY\SYSTEM] FOR LOGIN [NT AUTHORITY\SYSTEM];
    GO
    ALTER ROLE [db_backupoperator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  3. 각 사용자 및 시스템 데이터베이스(tempdb 제외)에 대해 이전 코드를 실행합니다.

자동 Backup 구성

자동화된 백업은 기본적으로 사용하지 않도록 설정됩니다.

권한을 할당한 후에는 자동 백업을 예약할 수 있습니다. 자동 백업을 구성한 후 Arc SQL 확장은 기본 백업 위치에 대한 백업을 시작합니다.

백업은 네이티브 SQL Server 백업이므로 모든 백업 기록은 msdb 데이터베이스의 백업 관련 테이블에서 사용할 수 있습니다.

인스턴스 수준

Azure Portal에서 자동 백업을 사용하도록 설정하려면 다음을 수행합니다.

  1. 기존 외부 백업 루틴을 사용하지 않도록 설정합니다.
  2. 자동 백업을 사용하도록 설정하려는 SQL Server로 이동합니다.
  3. 백업을 선택합니다.
  4. 정책 구성을 선택합니다.
  5. 정책 구성에서 다음을 수행합니다.
    • 백업 보존 일수를 1과 35 사이에서 값을 설정합니다.
    • 전체, 차등 및 트랜잭션 로그 백업에 대한 일정을 설정합니다.
  6. 적용을 선택하여 이 구성을 사용하도록 설정합니다.

비즈니스 요구 사항을 충족하도록 보존 기간 및 빈도를 설정합니다. 보존 정책은 전체 백업 빈도보다 커야 합니다. 안전 조치로 자동 백업 프로세스는 항상 하나 이상의 전체 백업 빈도와 보존 일수의 백업 세트를 유지합니다.

데이터베이스 수준

포털에서 개별 사용자 지정 데이터베이스 수준 백업을 구성하려면 다음을 수행합니다.

  1. 인스턴스 선택
  2. 데이터베이스 선택
  3. 왼쪽의 데이터 관리에서
  4. 백업(프리뷰) - 데이터베이스 백업 정책 구성(프리뷰) 선택
  5. 정책 구성을 선택합니다.
  6. 정책 구성에서 다음을 수행합니다.
    • 백업 보존 일수를 1과 35 사이에서 값을 설정합니다.
    • 전체, 차등 및 트랜잭션 로그 백업에 대한 일정을 설정합니다.
  7. 적용을 선택하여 이 구성을 사용하도록 설정합니다.

비즈니스 요구 사항을 충족하도록 보존 기간 및 빈도를 설정합니다. 보존 정책은 전체 백업 빈도보다 커야 합니다. 안전 조치로 자동 백업 프로세스는 항상 하나 이상의 전체 백업 빈도와 보존 일수의 백업 세트를 유지합니다.

자동 백업 사용 안 함

백업 보존 날짜를 0으로 설정하면 백업 정책이 유지되더라도 자동 백업이 비활성화되고 백업이 되지 않습니다. 백업 보존을 영이 아닌 값으로 설정하면 정책이 다시 활성화됩니다.

이 설정은 데이터베이스 및 인스턴스 수준 백업 모두에 적용됩니다. 데이터베이스 수준 백업 일정을 사용하지 않도록 설정하면 인스턴스 수준 백업이 예약된 경우에도 데이터베이스에 대한 백업이 되지 않습니다.

자동 백업 삭제

개별 데이터베이스 수준 백업 예약 페이지의 포털에서 백업 정책을 인스턴스 수준으로 되돌리기를 선택하여 데이터베이스 수준 백업 정책을 삭제합니다.

인스턴스 수준 백업 일정을 삭제하려면 CLI를 통해 할 수 있습니다. 삭제되면 인스턴스 수준 또는 데이터베이스 수준에서 백업이 되지 않습니다. 백업을 다시 하려면 새 백업 일정을 구성해야 합니다.

인스턴스 수준 정책 삭제

az sql server-arc backups-policy delete --name <arc-server-name> --resource-group <resourcegroup> 

예시:

az sql server-arc backups-policy delete --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup  

데이터베이스 수준 정책 삭제

az sql db-arc backups-policy delete --name <sql-database-name> --server <arc-server-name> --resource-group <resourcegroup> 

예시:

az sql db-arc backups-policy delete --name MyDatabaseName --server MyArcServer_SQLServerPROD --resource-group MyResourceGroup 

현재 백업 정책 보기

SQL Server에 대한 현재 백업 정책을 보려면 다음 명령을 실행합니다.

az sql server-arc backups-policy show --name <arc-server-name> --resource-group <resourcegroup>

예시:

az sql server-arc backups-policy show --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup

출력

{
  "differentialBackupHours": 24,
  "fullBackupDays": 7,
  "instanceName": "MSSQLSERVER01",
  "retentionPeriodDays": 16,
  "transactionLogBackupMinutes": 5
}

시스템 데이터베이스 Backup

Azure Arc 지원 SQL Server 인스턴스에서 기본 제공 자동 백업을 사용하도록 설정하면 시스템 데이터베이스도 기본 백업 위치에 백업됩니다. 시스템 데이터베이스에 대해 전체 백업만 수행됩니다.

고려 사항

  • 백업 파일은 SQL Server 인스턴스 수준에서 구성된 대로 기본 백업 위치에 저장됩니다.

  • SQL Server 인스턴스의 기본 백업 위치(SQL Server 2019(15.x) 이상)를 찾으려면 다음을 실행합니다.

    SELECT SERVERPROPERTY('InstanceDefaultBackupPath');
    
  • 2019년 미만의 SQL Server 버전의 경우 기본 백업 경로가 레지스트리 설정에 저장됩니다. 확장 저장 프로시저 xp_instance_regwrite 또는 SSMS(SQL Server Management Studio)에서 이 설정을 구성합니다. SSMS를 사용하려면 다음을 수행합니다.

    1. SSMS에서 Arc 지원 SQL Server로 연결합니다.
    2. 서버 속성>데이터베이스 설정>데이타베이스 기본 위치로 이동합니다.
  • 인스턴스 수준에서 구성된 백업 정책은 인스턴스의 모든 데이터베이스에 적용됩니다.

  • 데이터베이스 및 인스턴스 수준 백업 일정이 모두 설정되면 데이터베이스 수준이 인스턴스 수준 백업 일정보다 우선합니다. 데이터베이스 수준 백업 일정을 삭제하면 인스턴스 수준 백업 일정이 있는 경우 다시 되돌아갑니다.

  • --name 값은 일반적으로 [Servername_SQLservername] 형식에 있는 Azure Arc 지원 SQL Server의 이름이어야 합니다.

  • --retention-days 값은 0~35일 수 있습니다.

  • --retention-days에 대한 0값은 인스턴스 또는 데이터베이스에 대해 자동 백업을 수행하지 않음을 나타냅니다.

  • SQL Server용 Azure 확장이 설치된 동일한 호스트에 여러 SQL Server 인스턴스가 있는 경우 각 인스턴스에 대해 자동 백업을 별도로 구성해야 합니다.

  • --backups-policy이 이미 구성된 후 --retention-days을 변경하면 변경 내용이 계속 적용되며 소급 적용되지 않습니다.

제한 사항

  • 백업을 수행하려면 사용자 데이터베이스가 전체 복구 모델에 있어야 합니다. 전체 복구 모델에 없는 데이터베이스는 자동으로 백업되지 않습니다.
  • 자동 백업은 현재 Always On FCI(장애 조치(failover) 클러스터 인스턴스)를 지원하지 않습니다.
  • AG(가용성 그룹) 복제본(replica)을 호스트하는 인스턴스에서는 자동 백업이 지원되지 않습니다.
  • 자동 백업은 Software Assurance, SQL 구독 또는 종량제 라이선스에만 사용할 수 있습니다. 자세한 내용은 라이선스 유형에 따른 기능 사용 가능성을 참조하세요.