managed_backup.sp_backup_config_basic(Transact-SQL)

적용 대상: SQL Server 2016(13.x) 이상 버전

특정 데이터베이스 또는 SQL Server 인스턴스에 대한 Microsoft Azure 기본 설정에 대한 SQL Server 관리 백업을 구성합니다.

참고 항목

이 프로시저는 자체적으로 호출하여 기본 관리되는 백업 구성을 만들 수 있습니다. 그러나 고급 기능 또는 사용자 지정 일정을 추가하려는 경우 이 절차를 사용하여 관리되는 백업을 사용하도록 설정하기 전에 managed_backup.sp_backup_config_advancedmanaged_backup.sp_backup_config_schedule을 사용하여 해당 설정을 구성합니다.

Transact-SQL 구문 표기 규칙

구문

EXEC managed_backup.sp_backup_config_basic
    [ @enable_backup = ] { 0 | 1 }
    , [ @database_name = ] 'database_name'
    , [ @container_url = ] 'Azure_Storage_blob_container'
    , [ @retention_days = ] retention_period_in_days
    , [ @credential_name = ] 'sql_credential_name'
[ ; ]

인수

[ @enable_backup = ] { 0 | 1 }

지정된 데이터베이스에 대해 Microsoft Azure에 대한 SQL Server 관리형 백업을 사용하거나 사용하지 않도록 설정합니다. @enable_backup 비트입니다.

SQL Server의 첫 번째 인스턴스에 대해 Microsoft Azure에 대한 SQL Server 관리 백업을 구성할 때 필요한 매개 변수입니다. 기존 SQL Server 관리형 백업을 Microsoft Azure 구성으로 변경하는 경우 이 매개 변수는 선택 사항입니다. 이 경우 지정되지 않은 구성 값은 기존 값을 유지합니다.

자세한 내용은 Azure에 대한 SQL Server 관리되는 백업 사용을 참조하세요.

[ @database_name = ] 'database_name'

특정 데이터베이스에서 관리되는 백업을 사용하도록 설정하기 위한 데이터베이스 이름입니다.

@database_name NULL로 설정된 경우 설정은 인스턴스 수준에 있습니다(인스턴스에서 만든 모든 새 데이터베이스에 적용됨).

[ @container_url = ] 'Azure_Storage_blob_container'

백업의 위치를 나타내는 URL입니다. @credential_name NULL인 경우 이 URL은 Azure Storage의 Blob 컨테이너에 대한 SAS(공유 액세스 서명) URL이며 백업은 새 백업을 사용하여 Blob 기능을 차단합니다. 자세한 내용은 SAS 이해를 검토하세요. @credential_name 지정되면 스토리지 계정 URL이며 백업은 사용되지 않는 백업을 페이지 Blob 기능에 사용합니다.

SAS URL에 SAS 토큰이 포함된 경우 물음표의 SAS 토큰과 분리해야 하며 물음표를 포함하지 않아야 합니다.

예를 들어 https://managedbackupstorage.blob.core.windows.net/backupcontainer?sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl 다음 두 값이 생성됩니다.

Type 출력
컨테이너 URL https://managedbackupstorage.blob.core.windows.net/backupcontainer
SAS 토큰 sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl

참고 항목

현재 이 매개 변수에는 SAS URL만 지원됩니다.

[ @retention_days = ] retention_period_in_days

백업 파일의 보존 기간(일)입니다. @retention_days int입니다. SQL Server 인스턴스에서 처음으로 Microsoft Azure에 대한 SQL Server 관리 백업을 구성할 때 필요한 매개 변수입니다. SQL Server 관리되는 백업을 Microsoft Azure 구성으로 변경하는 경우 이 매개 변수는 선택 사항입니다. 지정하지 않은 경우 기존 구성 값이 유지됩니다.

[ @credential_name = ] 'sql_credential_name'

Azure Storage 계정에 인증하는 데 사용되는 SQL 자격 증명의 이름입니다. @credential_name sysname입니다. 지정하면 백업이 페이지 Blob에 저장됩니다. 이 매개 변수가 NULL이면 백업이 블록 Blob으로 저장됩니다. 페이지 Blob에 백업하는 것은 더 이상 사용되지 않으므로 새 블록 Blob 백업 기능을 사용하는 것이 좋습니다. SQL Server 관리되는 백업을 Microsoft Azure 구성으로 변경하는 데 사용되는 경우 이 매개 변수는 선택 사항입니다. 지정하지 않으면 기존 구성 값이 유지됩니다.

Warning

@credential_name 매개 변수는 현재 지원되지 않습니다. 블록 Blob에 대한 백업만 지원되므로 이 매개 변수는 NULL이어야 합니다.

반환 코드 값

0 (성공) 또는 1 (실패).

사용 권한

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

예제

A. 스토리지 계정 컨테이너 및 SAS URL 만들기

최신 Azure PowerShell 명령을 사용하여 스토리지 계정 컨테이너와 SAS(공유 액세스 서명) URL을 모두 만들 수 있습니다. 다음 예제에서는 스토리지 계정에 새 컨테이너 myContainermystorageaccount 만든 다음 전체 권한으로 해당 컨테이너에 대한 SAS URL을 가져옵니다.

공유 액세스 서명에 대한 자세한 내용은 SAS(공유 액세스 서명)를 사용하여 Azure Storage 리소스에 대한 제한된 액세스 권한 부여를 참조하세요. PowerShell 스크립트 예제는 공유 액세스 서명 만들기를 참조 하세요.

$context = New-AzureStorageContext -StorageAccountName mystorageaccount -StorageAccountKey (Get-AzureStorageKey -StorageAccountName mystorageaccount).Primary
New-AzureStorageContainer -Name myContainer -Context $context
New-AzureStorageContainerSASToken -Name myContainer -Permission rwdl -FullUri -Context $context

B. Azure에 SQL Server Managed Backup 사용

다음 예제에서는 SQL Server가 실행되는 SQL Server 인스턴스에 대해 Microsoft Azure에 대한 SQL Server 관리 백업을 사용하도록 설정하고, 보존 정책을 30일로 설정하고, 대상을 스토리지 계정에 명명mystorageaccountmyContainer 컨테이너로 설정합니다.

USE msdb;
GO

EXEC managed_backup.sp_backup_config_basic @enable_backup = 1,
    @container_url = 'https://mystorageaccount.blob.core.windows.net/myContainer',
    @retention_days = 30;
GO

C. Azure에 SQL Server Managed Backup 사용 안 함

다음 예제에서는 실행되는 SQL Server 인스턴스에 대해 Microsoft Azure에 대한 SQL Server 관리 백업을 사용하지 않도록 설정합니다.

USE msdb;
GO

EXEC managed_backup.sp_backup_config_basic @enable_backup = 0;
GO