配置 Microsoft Azure SQL Server 托管备份的高级选项

适用于:SQL Server

下列教程介绍如何为目标为 Microsoft Azure 的 SQL Server 托管备份设置高级选项。 仅当你需要提供的这些功能时,才需要这些步骤。 否则,可以启用目标为 Microsoft Azure 的 SQL Server 托管备份,并依赖于默认行为。

在每个方案中,使用 database_name 参数指定备份。 当 database_name 为 NULL 或 * 时,这些更改会影响实例级别的默认设置。 实例级别的设置也会影响在更改后创建的新数据库。

指定这些设置后,便可以使用系统存储过程 managed_backup.sp_backup_config_basic (Transact-SQL) 为数据库或实例启用托管备份。 有关详细信息,请参阅启用 Microsoft Azure SQL Server 托管备份

警告

在使用 managed_backup.sp_backup_config_basic (Transact-SQL) 启用目标为 Microsoft Azure 的 SQL Server 托管备份之前,应该始终配置高级选项和自定义计划选项。 否则,在启用目标为 Microsoft Azure 的 SQL Server 托管备份和配置这些设置之间的这一时间段中,可能会发生不需要的备份操作。

配置加密

以下步骤说明了如何使用存储过程 managed_backup.sp_backup_config_advanced (Transact-SQL) 来指定加密设置。

  1. 确定加密算法: 首先确定要使用的加密算法的名称。 选择以下算法之一:

    • AES_128

    • AES_192

    • AES_256

    • TRIPLE_DES_3KEY

    • NO_ENCRYPTION

  2. 创建数据库主密钥: 选择一个密码,用于加密将存储在数据库中的主密钥的副本。

    -- Creates a database master key.  
    -- The key is encrypted using the password "<master key password>"  
    USE Master;  
    GO  
       CREATE MASTER KEY ENCRYPTION BY PASSWORD = '<master key password>';  
    GO  
    
  3. 创建备份证书或非对称密钥: 可以将证书或非对称密钥用于加密。 以下示例创建了用于加密的备份证书。

    USE Master;  
    GO  
       CREATE CERTIFICATE MyTestDBBackupEncryptCert  
          WITH SUBJECT = 'MyTestDBBackupEncryptCert';  
    GO  
    
  4. 设置托管备份加密: 使用相应的值调用 managed_backup.sp_backup_config_advanced 存储过程。 例如,以下示例使用名为 MyDB 的证书和 MyTestDBBackupEncryptCert 加密算法为加密配置 AES_128 数据库。

    USE msdb;  
    GO  
       EXEC managed_backup.sp_backup_config_advanced  
          @database_name = 'MyDB'                
          ,@encryption_algorithm ='AES_128'  
          ,@encryptor_type = 'CERTIFICATE'  
          ,@encryptor_name = 'MyTestDBBackupEncryptCert';  
    GO  
    

    警告

    如果在上一示例中 @database_name 为 NULL,这些设置则应用于 SQL Server 实例。

配置自定义备份计划

以下步骤说明了如何使用存储过程 managed_backup.sp_backup_config_schedule (Transact-SQL) 设置自定义计划。

  1. 确定完整备份的频率: 确定进行完整数据库备份的频率。 可以选择“每日”或“每周”完整备份。

  2. 确定日志备份的频率: 确定进行日志备份的频率。 此值以分钟或小时为单位。

  3. 确定在星期几进行每周备份: 如果是每周备份,请选择在星期几进行完整备份。

  4. 确定备份的开始时间:使用 24 小时表示法,选择开始备份的时间

  5. 确定允许备份的时间长度: 这将指定必须完成备份的时间。

  6. 设置自定义备份计划: 以下存储过程为 MyDB 数据库定义了自定义计划。 完整备份将在每周 Monday17:30进行。 每 5 分钟进行日志备份。 备份完成的时间为两个小时。

    USE msdb;  
    GO  
    EXEC managed_backup.sp_backup_config_schedule   
         @database_name =  'MyDB'  
        ,@scheduling_option = 'Custom'  
        ,@full_backup_freq_type = 'Weekly'  
        ,@days_of_week = 'Monday'  
        ,@backup_begin_time =  '17:30'  
        ,@backup_duration = '02:00'  
        ,@log_backup_freq = '00:05'  
    GO  
    
    

后续步骤

在配置高级选项和自定义计划后,必须在目标数据库或 SQL Server 实例上启用目标为 Microsoft Azure 的 SQL Server 托管备份。 有关详细信息,请参阅启用 Microsoft Azure SQL Server 托管备份

另请参阅

目标为 Microsoft Azure 的 SQL Server 托管备份