다음을 통해 공유


Azure에 SQL Server 관리 백업 설정

이 항목에는 다음 두 자습서가 포함됩니다.

데이터베이스 수준에서 Microsoft Azure에 SQL Server 관리되는 백업을 설정하고, 이메일 알림을 사용하도록 설정하고, 백업 작업을 모니터링합니다.

instance 수준에서 Microsoft Azure에 SQL Server 관리되는 백업을 설정하고, 이메일 알림을 사용하도록 설정하고, 백업 작업을 모니터링합니다.

가용성 그룹을 위해 Microsoft Azure에 SQL Server Managed Backup을 설정하는 방법에 대한 자습서는 가용성 그룹을 위해 Microsoft Azure에 SQL Server Managed Backup 설정을 참조하세요.

Microsoft Azure에 SQL Server 관리되는 백업 설정

데이터베이스에 대해 Microsoft Azure에 SQL Server 관리되는 백업 사용 및 구성

이 자습서에서는 데이터베이스(TestDB)에 대해 Microsoft Azure에 SQL Server Managed Backup을 사용하도록 설정하고 구성하는 데 필요한 단계와 Microsoft Azure 상태 상태 대한 관리되는 백업 SQL Server 모니터링을 사용하도록 설정하는 단계를 설명합니다.

사용 권한:

  • ALTER ANY CREDENTIAL 권한 및 EXECUTEsp_delete_backuphistory 저장 프로시저에 대한 권한이 있는 db_backupoperator데이터베이스 역할의 멤버 자격이 필요합니다.

  • smart_admin.fn_get_current_xevent_settings함수에 대한 SELECT 권한이 필요합니다.

  • EXECUTEsmart_admin.sp_get_backup_diagnostics 저장 프로시저에 대한 권한이 필요합니다. 또한 VIEW SERVER STATE 권한도 필요한데, 이 권한이 필요한 다른 시스템 개체를 내부적으로 호출하기 때문입니다.

  • EXECUTEsmart_admin.sp_backup_master_switch 저장 프로시저에 대한 smart_admin.sp_set_instance_backup 권한이 필요합니다.

  1. Microsoft Azure Storage 계정을 만듭니다. 백업은 Microsoft Azure Storage 서비스에 저장됩니다. 계정이 없는 경우 먼저 Microsoft Azure Storage 계정을 만들어야 합니다.

    • SQL Server 2014에서는 블록 및 추가 Blob과 다른 페이지 Blob을 사용합니다. 따라서 Blob 계정이 아닌 범용 계정을 만들어야 합니다. 자세한 내용은 Azure Storage 계정 정보를 참조하세요.
    • 스토리지 계정 이름 및 액세스 키를 적어 둡니다. 스토리지 계정 이름 및 액세스 키 정보는 SQL 자격 증명을 만드는 데 사용됩니다. SQL 자격 증명은 스토리지 계정 인증에 사용됩니다.
  2. SQL 자격 증명을 만듭니다. 스토리지 계정의 이름을 ID로 사용하고 스토리지 액세스 키를 암호로 사용하여 SQL 자격 증명을 만듭니다.

  3. SQL Server 에이전트 서비스가 시작되고 실행 중인지 확인: 현재 SQL Server 에이전트가 실행되지 않고 있으면 시작합니다. Microsoft Azure에 대한 SQL Server Managed Backup 을 실행하여 백업 작업을 수행하려면 SQL Server 에이전트가 필요합니다. SQL Server 에이전트가 자동으로 실행되어 백업 작업이 정기적으로 발생하도록 설정할 수 있습니다.

  4. 보존 기간 결정: 백업 파일의 보존 기간을 결정합니다. 보존 기간은 일 단위로 지정되며 1-30일의 범위로 설정할 수 있습니다.

  5. Microsoft Azure에 SQL Server Managed Backup 사용 및 구성: SQL Server Management Studio 시작하고 데이터베이스가 설치된 instance 연결합니다. 요구 사항에 따라 데이터베이스 이름, SQL 자격 증명, 보존 기간 및 암호화 옵션의 값을 수정한 후 쿼리 창에서 다음 문을 실행합니다.

    암호화용 인증서를 만드는 방법에 대한 자세한 내용은 암호화된 백업 만들기의 백업 인증서 만들기 단계를 참조 하세요.

    Use msdb;  
    GO  
    EXEC smart_admin.sp_set_db_backup   
                    @database_name='TestDB'   
                    ,@retention_days=30   
                    ,@credential_name='MyCredential'  
                    ,@encryption_algorithm ='AES_128'  
                    ,@encryptor_type= 'Certificate'  
                    ,@encryptor_name='MyBackupCert'  
                    ,@enable_backup=1;  
    GO  
    
    

    Microsoft Azure에 대한 SQL Server Managed Backup 이 설정되었습니다. 데이터베이스에서 백업 작업이 실행을 시작하려면 최대 15분이 필요합니다.

  6. 확장 이벤트 기본 구성 검토: 다음 Transact-SQL 문을 실행하여 확장 이벤트 설정을 검토합니다.

    SELECT * FROM smart_admin.fn_get_current_xevent_settings()  
    

    Admin, Operational 및 Analytical 채널 이벤트가 기본적으로 설정되어 있고 해제할 수 없습니다. 수동 작업이 필요한 이벤트를 모니터링하기에 충분해야 합니다. 디버그 이벤트를 설정할 수 있지만 디버그 채널에는 Microsoft Azure에 대한 SQL Server Managed Backup 에서 문제를 발견 및 해결하는 데 사용하는 정보와 디버그 이벤트가 포함됩니다. 자세한 내용은 Microsoft Azure에 SQL Server 관리되는 백업 모니터링을 참조하세요.

  7. Health 상태 알림 사용 및 구성: Microsoft Azure에 대한 SQL Server Managed Backup에는 주의가 필요할 수 있는 오류나 경고의 메일 알림을 보내는 에이전트 작업을 만드는 저장 프로시저가 있습니다. 전자 메일 알림을 사용 및 구성하는 단계는 다음과 같습니다.

    1. 인스턴스에 데이터베이스 메일이 설정되지 않은 경우 데이터베이스 메일을 설정합니다. 자세한 내용은 Configure Database Mail을 참조하세요.

    2. 데이터베이스 메일을 사용하도록 SQL Server 에이전트 알림을 구성합니다. 자세한 내용은 Configure SQL Server Agent Mail to Use Database Mail을 참조하세요.

    3. 백업 오류 및 경고를 수신하도록 이메일 알림 설정: 쿼리 창에서 다음 Transact-SQL 문을 실행합니다.

      EXEC msdb.smart_admin.sp_set_parameter  
      @parameter_name = 'SSMBackup2WANotificationEmailIds',  
      @parameter_value = '<email1;email2>'  
      
      

      자세한 내용 및 전체 샘플 스크립트는 Microsoft Azure에 SQL Server 관리되는 백업 모니터링을 참조하세요.

  8. Microsoft Azure Storage 계정에서 백업 파일 보기: SQL Server Management Studio 또는 Azure 관리 Portal에서 스토리지 계정에 연결합니다. Microsoft Azure에 SQL Server Managed Backup을 사용하도록 구성한 데이터베이스를 호스트하는 SQL Server instance 대한 컨테이너가 표시됩니다. 데이터베이스에 대해 Microsoft Azure에 대한 관리 백업을 사용하도록 설정한 SQL Server 15분 이내에 데이터베이스 및 로그 백업이 표시 될 수도 있습니다.

  9. 상태 모니터링: 이전에 구성한 전자 메일 알림을 통해 모니터링하거나 기록된 이벤트를 적극적으로 모니터링할 수 있습니다. 다음은 이벤트를 표시하는 데 사용하는 예제 Transact-SQL 문입니다.

    --  view all admin events  
    Use msdb;  
    Go  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    DECLARE @eventresult TABLE  
    (event_type nvarchar(512),  
    event nvarchar (512),  
    timestamp datetime  
    )  
    
    INSERT INTO @eventresult  
    
    EXEC smart_admin.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek  
    
    SELECT * from @eventresult  
    WHERE event_type LIKE '%admin%'  
    
    
    -- to enable debug events  
    Use msdb;  
    Go  
             EXEC smart_admin.sp_set_parameter 'FileRetentionDebugXevent', 'True'  
    
    
    --  View all events in the current week  
    Use msdb;  
    Go  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    EXEC smart_admin.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek;  
    
    

이 섹션에서는 데이터베이스에서 Microsoft Azure에 대한 SQL Server Managed Backup 을 처음 구성하는 단계에 대해 설명합니다. 동일한 시스템 저장 프로시저 smart_admin.sp_set_db_backup 을 사용하여 기존 구성을 수정하고 새 값을 제공할 수 있습니다. 자세한 내용은 Microsoft Azure에 대한 관리되는 백업 SQL Server - 보존 및 스토리지 설정을 참조하세요.

기본 설정이 있는 인스턴스에 대해 Microsoft Azure에 SQL Server Managed Backup 사용

이 자습서에서는 instance 'MyInstance',\에 대해 Microsoft Azure에 SQL Server Managed Backup을 사용하도록 설정하고 구성하는 단계를 설명합니다. 여기에는 Microsoft Azure 상태 상태 SQL Server 관리되는 백업을 모니터링할 수 있는 단계가 포함되어 있습니다.

사용 권한:

  • ALTER ANY CREDENTIAL 권한 및 EXECUTEsp_delete_backuphistory 저장 프로시저에 대한 권한이 있는 db_backupoperator데이터베이스 역할의 멤버 자격이 필요합니다.

  • smart_admin.fn_get_current_xevent_settings함수에 대한 SELECT 권한이 필요합니다.

  • EXECUTEsmart_admin.sp_get_backup_diagnostics 저장 프로시저에 대한 권한이 필요합니다. 또한 VIEW SERVER STATE 권한도 필요한데, 이 권한이 필요한 다른 시스템 개체를 내부적으로 호출하기 때문입니다.

  1. Microsoft Azure Storage 계정을 만듭니다. 백업은 Microsoft Azure Storage 서비스에 저장됩니다. 계정이 없는 경우 먼저 Microsoft Azure Storage 계정을 만들어야 합니다.

    • SQL Server 2014에서는 블록 및 추가 Blob과 다른 페이지 Blob을 사용합니다. 따라서 Blob 계정이 아닌 범용 계정을 만들어야 합니다. 자세한 내용은 Azure Storage 계정 정보를 참조하세요.
    • 스토리지 계정 이름 및 액세스 키를 적어 둡니다. 스토리지 계정 이름 및 액세스 키 정보는 SQL 자격 증명을 만드는 데 사용됩니다. SQL 자격 증명은 스토리지 계정 인증에 사용됩니다.
  2. SQL 자격 증명을 만듭니다. 스토리지 계정의 이름을 ID로 사용하고 스토리지 액세스 키를 암호로 사용하여 SQL 자격 증명을 만듭니다.

  3. SQL Server 에이전트 서비스가 시작되고 실행 중인지 확인: 현재 SQL Server 에이전트가 실행되지 않고 있으면 시작합니다. Microsoft Azure에 대한 SQL Server Managed Backup 을 실행하여 백업 작업을 수행하려면 SQL Server 에이전트가 필요합니다. SQL Server 에이전트가 자동으로 실행되어 백업 작업이 정기적으로 발생하도록 설정할 수 있습니다.

  4. 보존 기간 결정: 백업 파일의 보존 기간을 결정합니다. 보존 기간은 일 단위로 지정되며 1-30일의 범위로 설정할 수 있습니다. SQL Server Microsoft Azure에 대한 관리되는 백업이 instance 수준에서 사용하도록 설정되고 그 이후에 생성된 모든 새 데이터베이스가 기본값으로 설정이 상속됩니다. 전체 또는 대량 로그 복구 모델로 설정된 데이터베이스만 지원되고 자동으로 구성됩니다. Microsoft Azure에 대한 관리되는 백업을 구성하지 않으려면 언제든지 특정 데이터베이스에 대해 Microsoft Azure에 SQL Server Managed Backup을 사용하지 않도록 설정할 수 SQL Server. 데이터베이스 수준에서 Microsoft Azure에 SQL Server 관리되는 백업을 구성하여 특정 데이터베이스에 대한 구성을 변경할 수도 있습니다.

  5. Microsoft Azure에 SQL Server Managed Backup 사용 및 구성: SQL Server Management Studio 시작하고 SQL Server instance 연결합니다. 요구 사항에 따라 데이터베이스 이름, SQL 자격 증명, 보존 기간 및 암호화 옵션의 값을 수정한 후 쿼리 창에서 다음 문을 실행합니다.

    암호화용 인증서를 만드는 방법에 대한 자세한 내용은 암호화된 백업 만들기의 백업 인증서 만들기 단계를 참조 하세요.

    Use msdb;  
    Go  
       EXEC smart_admin.sp_set_instance_backup  
                     @enable_backup=1  
                    ,@retention_days=30   
                    ,@credential_name='sqlbackuptoURL'  
                    ,@encryption_algorithm ='AES_128'  
                    ,@encryptor_type= 'Certificate'  
                    ,@encryptor_name='MyBackupCert';  
    GO  
    
    

    이제 instance Microsoft Azure에 대한 SQL Server 관리되는 백업을 사용할 수 있습니다.

  6. 다음 Transact-SQL 문을 실행하여 구성 설정을 확인합니다.

    Use msdb;  
    GO  
    SELECT * FROM smart_admin.fn_backup_instance_config ();  
    
    
  7. 인스턴스에 대한 새 데이터베이스를 만듭니다. 다음 Transact-SQL 문을 실행하여 데이터베이스에 대한 Microsoft Azure에 대한 SQL Server Managed Backup 구성 설정을 확인합니다.

    Use msdb  
    GO  
    SELECT * FROM smart_admin.fn_backup_db_config('NewDB')  
    

    설정이 표시되고 데이터베이스에 대한 백업 작업이 실행을 시작하려면 최대 15분이 필요합니다.

  8. Health 상태 알림 사용 및 구성: Microsoft Azure에 대한 SQL Server Managed Backup에는 주의가 필요할 수 있는 오류나 경고의 메일 알림을 보내는 에이전트 작업을 만드는 저장 프로시저가 있습니다. 이러한 알림을 수신하려면 SQL Server 에이전트 작업을 만드는 저장 프로시저를 실행해야 합니다. 전자 메일 알림을 사용 및 구성하는 단계는 다음과 같습니다.

    1. 인스턴스에 데이터베이스 메일이 설정되지 않은 경우 데이터베이스 메일을 설정합니다. 자세한 내용은 Configure Database Mail을 참조하세요.

    2. 데이터베이스 메일을 사용하도록 SQL Server 에이전트 알림을 구성합니다. 자세한 내용은 Configure SQL Server Agent Mail to Use Database Mail을 참조하세요.

    3. 백업 오류 및 경고를 수신하도록 이메일 알림 설정: 쿼리 창에서 다음 Transact-SQL 문을 실행합니다.

      EXEC msdb.smart_admin.sp_set_parameter  
      @parameter_name = 'SSMBackup2WANotificationEmailIds',  
      @parameter_value = '<email address>'  
      
      

      모니터링하는 방법 및 전체 샘플 스크립트에 대한 자세한 내용은 Microsoft Azure에 대한 관리되는 백업 SQL Server 모니터링을 참조하세요.

  9. Microsoft Azure Storage 계정에서 백업 파일 보기: SQL Server Management Studio 또는 Azure 관리 Portal에서 스토리지 계정에 연결합니다. Microsoft Azure에 SQL Server Managed Backup을 사용하도록 구성한 데이터베이스를 호스트하는 SQL Server instance 대한 컨테이너가 표시됩니다. 새 데이터베이스를 만든 후 15분 이내에 데이터베이스 및 로그 백업도 표시됩니다.

  10. 상태 모니터링: 이전에 구성한 전자 메일 알림을 통해 모니터링하거나 기록된 이벤트를 적극적으로 모니터링할 수 있습니다. 다음은 이벤트를 표시하는 데 사용하는 예제 Transact-SQL 문입니다.

    --  view all admin events  
    Use msdb;  
    Go  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    DECLARE @eventresult TABLE  
    (event_type nvarchar(512),  
    event nvarchar (512),  
    timestamp datetime  
    )  
    
    INSERT INTO @eventresult  
    
    EXEC smart_admin.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek  
    
    SELECT * from @eventresult  
    WHERE event_type LIKE '%admin%'  
    
    
    --  to enable debug events  
    Use msdb;  
    Go  
             EXEC smart_admin.sp_set_parameter 'FileRetentionDebugXevent', 'True'  
    
    
    --  View all events in the current week  
    Use msdb;  
    Go  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    EXEC smart_admin.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek;  
    
    

SQL Server Microsoft Azure에 대한 관리되는 백업 기본 설정은 데이터베이스 수준에서 특별히 설정을 구성하여 특정 데이터베이스에 대해 재정의할 수 있습니다. Microsoft Azure 서비스에 대한 관리되는 백업 SQL Server 일시 중지하고 다시 시작할 수도 있습니다. 자세한 내용은 Microsoft Azure에 대한 관리되는 백업 SQL Server - 보존 및 스토리지 설정을 참조하세요.