Azure sanal makineleri için Otomatik Yedekleme (Resource Manager)

Şunlar için geçerlidir:Azure VM'de SQL Server

Otomatik Yedekleme, SQL Server 2016 veya üzeri Standard, Enterprise veya Developer sürümlerini çalıştıran bir Azure VM'de mevcut ve yeni tüm veritabanları için Microsoft Azure'a Yönetilen Yedekleme'yi otomatik olarak yapılandırıyor. Bu, dayanıklı Azure Blob Depolama kullanan normal veritabanı yedeklemelerini yapılandırmanızı sağlar. Otomatik Yedekleme, HIZMET olarak SQL Server altyapısı (IaaS) Aracısı Uzantısına bağlıdır.

Önkoşullar

Otomatik Yedekleme'yi kullanmak için aşağıdaki önkoşulları gözden geçirin:

İşletim sistemi:

  • Windows Server 2012 R2 veya üzeri

SQL Server sürümü/sürümü:

  • SQL Server 2016 veya üzeri: Developer, Standard veya Enterprise

Not

SQL Server 2014 için bkz . SQL Server 2014 için Otomatik Yedekleme.

Veritabanı yapılandırması:

  • Hedef kullanıcı veritabanları tam kurtarma modelini kullanmalıdır. Sistem veritabanlarının tam kurtarma modelini kullanması gerekmez. Ancak veya msdbiçin model günlük yedeklemelerinin alınmasını gerektiriyorsanız tam kurtarma modelini kullanmanız gerekir. Tam kurtarma modelinin yedeklemeler üzerindeki etkisi hakkında daha fazla bilgi için tam kurtarma modelinin altındaki Yedekleme bölümüne bakın.
  • SQL Server VM, SQL IaaS Aracısı uzantısıyla kaydedildi ve Otomatik Yedekleme özelliği etkinleştirildi. Otomatik Yedekleme uzantıya bağlı olduğundan, Otomatik Yedekleme yalnızca varsayılan örnekten veya tek bir adlandırılmış örnekten hedef veritabanlarında desteklenir. Varsayılan örnek yoksa ve birden çok adlandırılmış örnek varsa, SQL IaaS Aracısı uzantısı başarısız olur ve Otomatik Yedekleme çalışmaz.
  • İkincil AlwaysOn kullanılabilirlik grubu çoğaltması üzerinde otomatik yedeklemeler çalıştırıyorsanız, yedeklemelerin başarılı olması için çoğaltma okunabilir olmalıdır.

Ayarlar

Aşağıdaki tabloda Otomatik Yedekleme için yapılandırılabilir seçenekler açıklanmaktadır. Gerçek yapılandırma adımları, Azure portalını mı yoksa Azure Windows PowerShell komutlarını mı kullandığınıza bağlı olarak değişir. Otomatik Yedekleme varsayılan olarak yedekleme sıkıştırması kullanır ve devre dışı bırakılamaz.

Temel Ayarlar

Ayar Aralık (Varsayılan) Açıklama
Otomatik Yedekleme Etkinleştir/Devre Dışı Bırak (Devre Dışı) SQL Server 2016 veya üzeri Geliştirici, Standart veya Enterprise çalıştıran bir Azure VM için Otomatik Yedeklemeyi etkinleştirir veya devre dışı bırakır.
Bekletme Süresi 1-90 gün (90 gün) Hizmetin içinde yedekleme meta verilerini msdbtuttuğu gün sayısı. Yedekleme için saklama süresi dolduktan sonra meta veriler 'den msdbsilinir, ancak dosyalar depolama kapsayıcısından silinmez. Depolama hesabınız için bir yaşam döngüsü yönetim ilkesi kullanarak yedekleme saklamayı iş gereksinimlerinize göre maliyet yönetimiyle dengeleyebilirsiniz.
Depolama Hesabı Azure depolama hesabı Otomatik Yedekleme dosyalarını blob depolamada depolamak için kullanılacak bir Azure depolama hesabı. Tüm yedekleme dosyalarını depolamak için bu konumda bir kapsayıcı oluşturulur. Yedekleme dosyası adlandırma kuralı tarih, saat ve veritabanı GUID'sini içerir.
Şifreleme Etkinleştir/Devre Dışı Bırak (Devre Dışı) Yedekleme şifrelemesini etkinleştirir veya devre dışı bırakır. Yedekleme şifrelemesi etkinleştirildiğinde, yedeklemeyi geri yüklemek için kullanılan sertifikalar aynı adlandırma kuralı kullanılarak belirtilen depolama hesabında aynı automaticbackup kapsayıcıda bulunur. Parola değişirse, bu parolayla yeni bir sertifika oluşturulur, ancak eski sertifika önceki yedeklemeleri geri yüklemek için kalır.
Parola Parola metni Şifreleme anahtarları için bir parola. Bu parola yalnızca şifreleme etkinleştirildiğinde gereklidir. Şifrelenmiş bir yedeklemeyi geri yüklemek için, yedeklemenin alındığı sırada kullanılan doğru parolaya ve ilgili sertifikaya sahip olmanız gerekir.

Gelişmiş Ayarlar

Ayar Aralık (Varsayılan) Açıklama
Sistem Veritabanı Yedeklemeleri Etkinleştir/Devre Dışı Bırak (Devre Dışı) Etkinleştirildiğinde, bu özellik sistem veritabanlarını da yedekler: master, msdbve model. ve model veritabanları içinmsdb, günlük yedeklemelerinin alınmasını istiyorsanız bunların tam kurtarma modelinde olduğunu doğrulayın. için mastergünlük yedeklemeleri hiçbir zaman alınmaz ve için tempdbhiçbir yedekleme alınmaz.
Yedekleme Zamanlaması El ile/Otomatik (Otomatik) Varsayılan olarak, yedekleme zamanlaması günlük büyümesine göre otomatik olarak belirlenir. El ile yedekleme zamanlaması, kullanıcının yedeklemeler için zaman penceresini belirtmesine olanak tanır. Bu durumda yedeklemeler yalnızca belirtilen sıklıkta ve belirli bir günün belirtilen zaman penceresinde gerçekleşir.
Tam yedekleme sıklığı Günlük/Haftalık Tam yedekleme sıklığı. Her iki durumda da tam yedeklemeler bir sonraki zamanlanmış zaman penceresinde başlar. Haftalık seçildiğinde, tüm veritabanları başarıyla yedeklenene kadar yedeklemeler birden çok güne yayılabilir.
Tam yedekleme başlangıç zamanı 00:00 – 23:00 (01:00) Tam yedeklemelerin gerçekleşebileceği belirli bir günün başlangıç saati.
Tam yedekleme süresi penceresi 1 – 23 saat (1 saat) Tam yedeklemelerin gerçekleşebileceği belirli bir günün zaman penceresinin süresi.
Günlük yedekleme sıklığı 5 – 60 dakika (60 dakika) Günlük yedeklemelerinin sıklığı.

Tam yedekleme sıklığını anlama

Günlük ve haftalık tam yedeklemeler arasındaki farkı anlamak önemlidir. Aşağıdaki iki örnek senaryoyu göz önünde bulundurun.

Senaryo 1: Haftalık yedeklemeler

Çok sayıda büyük veritabanı içeren bir SQL Server VM'niz var.

Pazartesi günü, aşağıdaki ayarlarla Otomatik Yedekleme'yi etkinleştireceksiniz:

  • Yedekleme zamanlaması: El ile
  • Tam yedekleme sıklığı: Haftalık
  • Tam yedekleme başlangıç saati: 01:00
  • Tam yedekleme süresi penceresi: 1 saat

Bu, bir sonraki kullanılabilir yedekleme penceresinin 1 saat boyunca Salı günü saat 01:00 olduğu anlamına gelir. Bu sırada Otomatik Yedekleme veritabanlarınızı birer birer yedeklemeye başlar. Bu senaryoda veritabanlarınız, ilk birkaç veritabanı için tam yedeklemelerin tamamlanmasını sağlayan büyüklüktedir. Ancak, bir saat sonra tüm veritabanları yedeklenmedi.

Bu durumda Otomatik Yedekleme, kalan veritabanlarını bir saat boyunca Çarşamba günü saat 01:00'da yedeklemeye başlar. Bu süre içinde tüm veritabanları yedeklenmediyse, sonraki gün aynı anda yeniden dener. Tüm veritabanları başarıyla yedeklenene kadar bu işlem devam eder.

Salı gününe ulaşıldıktan sonra Otomatik Yedekleme tüm veritabanlarını yeniden yedeklemeye başlar.

Bu senaryo, Otomatik Yedekleme'nin yalnızca belirtilen zaman penceresinde çalıştığını ve her veritabanının haftada bir kez yedeklendiğini gösterir. Bu, tüm yedeklemelerin tek bir günde tamamlanmasının mümkün olmadığı durumlarda yedeklemelerin birden çok güne yayıldığını da gösterir.

Senaryo 2: Günlük yedeklemeler

Çok sayıda büyük veritabanı içeren bir SQL Server VM'niz var.

Pazartesi günü, aşağıdaki ayarlarla Otomatik Yedekleme'yi etkinleştireceksiniz:

  • Yedekleme zamanlaması: El ile
  • Tam yedekleme sıklığı: Günlük
  • Tam yedekleme başlangıç zamanı: 22:00
  • Tam yedekleme süresi penceresi: 6 saat

Bu, bir sonraki kullanılabilir yedekleme penceresinin Pazartesi günü 22:00'de 6 saat olduğu anlamına gelir. Bu sırada Otomatik Yedekleme veritabanlarınızı birer birer yedeklemeye başlar.

Ardından Salı günü saat 10'da 6 saat boyunca tüm veritabanlarının tam yedeklemeleri yeniden başlar.

Önemli

Yedeklemeler her aralıkta sıralı olarak gerçekleşir. Çok sayıda veritabanı olan örnekler için, yedekleme aralığınızı tüm yedeklemeleri barındırmak için yeterli süreyle zamanlayın. Yedeklemeler belirli bir aralık içinde tamamlanamıyorsa, bazı yedeklemeler atlanabilir ve tek bir veritabanı için yedeklemeler arasındaki süre, yapılandırılan yedekleme aralığı süresinden uzun olabilir ve bu da geri yükleme noktası hedefinizi (RPO) olumsuz etkileyebilir.

Yeni VM'leri yapılandırma

Resource Manager dağıtım modelinde yeni bir SQL Server 2016 veya üzeri makine oluşturduğunuzda Otomatik Yedekleme'yi yapılandırmak için Azure portalını kullanın.

SQL Server ayarları sekmesinde Otomatik Yedekleme'nin altında Etkinleştir'i seçin. Otomatik Yedekleme'yi etkinleştirdiğinizde aşağıdaki ayarları yapılandırabilirsiniz:

  • Yedeklemeler için saklama süresi (90 güne kadar)
  • Yedeklemeler için kullanılacak Depolama hesabı ve depolama kapsayıcısı
  • Yedeklemeler için şifreleme seçeneği ve parola
  • Backup sistem veritabanları
  • Yedekleme zamanlamasını yapılandırma

Yedeklemeyi şifrelemek için Etkinleştir'i seçin. Ardından Parola’yı belirtin. Azure yedeklemeleri şifrelemek için bir sertifika oluşturur ve bu sertifikayı korumak için belirtilen parolayı kullanır.

Yedeklemelerinizi depolamak istediğiniz kapsayıcıyı belirtmek için Kapsayıcı Depolama Seç'i seçin.

Varsayılan olarak zamanlama otomatik olarak ayarlanır, ancak el ile'yi seçerek kendi zamanlamanızı oluşturabilirsiniz. Bu sayede yedekleme sıklığını, yedekleme zamanı penceresini ve günlük yedekleme sıklığını dakikalar içinde yapılandırabilirsiniz.

Aşağıdaki Azure portalı ekran görüntüsü, yeni bir SQL Server VM oluşturduğunuzda Otomatik Yedekleme ayarlarını gösterir:

Azure portalında Otomatik Yedekleme yapılandırmasının ekran görüntüsü.

Mevcut VM'leri yapılandırma

Mevcut SQL Server sanal makineleri için SQL sanal makineleri kaynağına gidin ve Ardından Otomatik Yedeklemelerinizi yapılandırmak için Yedeklemeler'i seçin.

Otomatik Yedekleme ayarlarınızı yapılandırmak için Etkinleştir'i seçin.

Saklama süresini (90 güne kadar), yedeklemelerinizi depolamak istediğiniz depolama hesabının kapsayıcısını, şifrelemeyi ve yedekleme zamanlamasını yapılandırabilirsiniz. Varsayılan olarak zamanlama otomatiktir.

Portaldaki mevcut VM'ler için Otomatik Yedekleme'nin ekran görüntüsü.

Kendi yedekleme zamanlamanızı ayarlamak istiyorsanız, El ile'yi seçin ve sistem veritabanlarının yedeklenip yedeklenmemesini ve işlem günlüğü yedekleme aralığını dakikalar içinde yapılandırmanız gerekir.

Kendi yedekleme zamanlamanızı yapılandırmak için el ile seçme işleminin ekran görüntüsü.

İşiniz bittiğinde, değişikliklerinizi kaydetmek için Yedekleme ayarları sayfasının alt kısmındaki Uygula düğmesini seçin.

Otomatik Yedekleme'yi ilk kez etkinleştiriyorsanız, Azure arka planda SQL Server IaaS Aracısı'nı yapılandırıyor. Bu süre boyunca Azure portalında Otomatik Yedekleme'nin yapılandırıldığı gösterilmeyebilir. Aracının yüklenmesi ve yapılandırılması için birkaç dakika bekleyin. Bundan sonra Azure portalı yeni ayarları yansıtır.

PowerShell ile yapılandırma

Otomatik Yedekleme'yi yapılandırmak için PowerShell'i kullanabilirsiniz. Başlamadan önce şunları yapmanız gerekir:

  • En son Azure PowerShell'i indirin ve yükleyin.
  • Windows PowerShell'i açın ve Bağlan-AzAccount komutuyla hesabınızla ilişkilendirin.

Not

Bu makalede, Azure ile etkileşim için önerilen PowerShell modülü olan Azure Az PowerShell modülü kullanılır. Az PowerShell modülünü kullanmaya başlamak için Azure PowerShell’i yükleyin. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

SQL Server IaaS Uzantısını Yükleme

Azure portalından bir SQL Server sanal makinesi sağladıysanız, SQL Server IaaS Uzantısı zaten yüklü olmalıdır. Get-AzVM komutunu çağırıp Extensions özelliğini inceleyerek VM'niz için yüklenip yüklenmediğini belirleyebilirsiniz.

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"

(Get-AzVM -Name $vmname -ResourceGroupName $resourcegroupname).Extensions 

SQL Server IaaS Aracısı uzantısı yüklüyse, "SqlIaaSAgent" veya "SQLIaaSExtension" olarak listelendiğini görmeniz gerekir.Uzantının ProvisioningState değeri de "Başarılı" olarak gösterilmelidir.

Yüklü değilse veya sağlanamadıysa, aşağıdaki komutla yükleyebilirsiniz. VM adı ve kaynak grubuna ek olarak, VM'nizin bulunduğu bölgeyi de ($region) belirtmeniz gerekir.

$region = "EASTUS2"
Set-AzVMSqlServerExtension -VMName $vmname `
    -ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
    -Version "2.0" -Location $region 

Geçerli ayarları doğrulama

Sağlama sırasında Otomatik Yedekleme'yi etkinleştirdiyseniz, geçerli yapılandırmanızı denetlemek için PowerShell'i kullanabilirsiniz. Get-AzVMSqlServerExtension komutunu çalıştırın ve AutoBackup Ayarlar özelliğini inceleyin:

(Get-AzVMSqlServerExtension -VMName $vmname -ResourceGroupName $resourcegroupname).AutoBackupSettings

Aşağıdakine benzer bir çıkış almanız gerekir:

Enable                      : True
EnableEncryption            : False
RetentionPeriod             : 30
StorageUrl                  : https://test.blob.core.windows.net/
StorageAccessKey            :  
Password                    : 
BackupSystemDbs             : False
BackupScheduleType          : Manual
FullBackupFrequency         : WEEKLY
FullBackupStartTime         : 2
FullBackupWindowHours       : 2
LogBackupFrequency          : 60

Çıkışınız Etkinleştir ayarının False olarak ayarlandığını gösteriyorsa Otomatik Yedekleme'yi etkinleştirmeniz gerekir. İyi haber, Otomatik Yedekleme'yi aynı şekilde etkinleştirmeniz ve yapılandırmanızdır. Bu bilgi için sonraki bölüme bakın.

Not

Bir değişiklik yaptıktan hemen sonra ayarları denetlerseniz, eski yapılandırma değerlerini geri almanız mümkündür. Birkaç dakika bekleyin ve değişikliklerinizin uygulandığından emin olmak için ayarları yeniden denetleyin.

Otomatik Yedeklemeyi Yapılandırma

PowerShell'i kullanarak Otomatik Yedekleme'yi etkinleştirebilir ve bu yedeklemenin yapılandırmasını ve davranışını istediğiniz zaman değiştirebilirsiniz.

İlk olarak, yedekleme dosyaları için bir depolama hesabı seçin veya oluşturun. Aşağıdaki betik bir depolama hesabı seçer veya yoksa oluşturur.

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"
$storage_accountname = "yourstorageaccount"
$storage_url = "https://yourstorageaccount.blob.core.windows.net/"

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

Not

Otomatik Yedekleme, yedeklerin premium depolamada depolanmasını desteklemez, ancak Premium Depolama kullanan VM disklerinden yedekleme alabilir.

Yedeklemeler için depolama hesabında özel bir kapsayıcı kullanmak istiyorsanız, kapsayıcıyı denetlemek veya yoksa oluşturmak için aşağıdaki betiği kullanın.

$storage_container = "backupcontainer"

New-AzStorageContainer -Name $storage_container -Context $storage.Context

if (!(Get-AzStorageAccount -StorageAccountName $storage_accountname -ResourceGroupName $resourcegroupname | Get-AzStorageContainer | Where-Object { $_.Name -eq $storage_container })){ `
	New-AzStorageContainer -Name $storage_container -Context $storage.Context `
} `
 else `
{ `
	Write-Warning "Container $storage_container already exists." `
}

Ardından, depolama hesabının Erişim anahtarını almak için aşağıdaki betiği kullanın:

$accesskey = (Get-AzStorageAccountKey -ResourceGroupName $resourcegroupname  -Name $storage_accountname)[0].value

Ardından Update-AzSqlVM komutunu kullanarak Otomatik Yedekleme ayarlarını azure depolama hesabında depolamak için etkinleştirin ve yapılandırın. Bu örnekte yedeklemeler 10 gün boyunca tutulacak şekilde ayarlanmıştır. Sistem veritabanı yedeklemeleri etkinleştirilir. Tam yedeklemeler her Cumartesi (haftalık) için zamanlanır ve iki saat boyunca saat 20:00'de başlayan bir zaman penceresi vardır. Günlük yedeklemeleri her 30 dakikada bir zamanlanır.

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingBackupScheduleType Manual `
-AutoBackupSettingFullBackupFrequency Weekly 
-AutoBackupSettingDaysOfWeek Saturday `
-AutoBackupSettingFullBackupStartTime 20 `
-AutoBackupSettingFullBackupWindowHour 2 `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod 10 `
-AutoBackupSettingLogBackupFrequency 30 `
-AutoBackupSettingStorageContainerName $storage_container `
-AutoBackupSettingBackupSystemDb

SQL Server IaaS Aracısı'nın yüklenmesi ve yapılandırılması birkaç dakika sürebilir.

Şifrelemeyi etkinleştirmek için, önceki betiği -AutoBackupSettingEnableEncryption parametresini -AutoBackupSettingPassword parametresi için parola (güvenli dize) ile birlikte geçirecek şekilde değiştirin. Aşağıdaki betik, önceki örnekteki Otomatik Yedekleme ayarlarını etkinleştirir ve şifreleme ekler.

$password = "r@ndom Va1ue"
$encryptionpassword = $password | ConvertTo-SecureString -AsPlainText -Force  

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingBackupScheduleType Manual `
-AutoBackupSettingFullBackupFrequency Weekly `
-AutoBackupSettingDaysOfWeek Saturday `
-AutoBackupSettingFullBackupStartTime 20 `
-AutoBackupSettingFullBackupWindowHour 2 `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod 10 `
-AutoBackupSettingLogBackupFrequency 30 `
-AutoBackupSettingEnableEncryption `
-AutoBackupSettingPassword $encryptionpassword `
-AutoBackupSettingStorageContainerName $storage_container `
-AutoBackupSettingBackupSystemDb

Ayarlarınızın uygulandığını onaylamak için Otomatik Yedekleme yapılandırmasını doğrulayın.

Otomatik Yedeklemeyi Devre Dışı Bırak

Otomatik Yedekleme'yi devre dışı bırakmak için, Update-AzSqlVM komutunda $false olarak ayarlanmış-AutoBackupSettingEnable parametresiyle aynı betiği çalıştırın. Değeri özelliğin devre dışı $false olarak ayarlayarak. Yüklemede olduğu gibi Otomatik Yedekleme'nin devre dışı bırakılması birkaç dakika sürebilir.

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable:$false

Örnek betik

Aşağıdaki betik, VM'niz için Otomatik Yedeklemeyi etkinleştirmek ve yapılandırmak üzere özelleştirebileceğiniz bir dizi değişken sağlar. Sizin durumunuzda, betiği gereksinimlerinize göre özelleştirmeniz gerekebilir. Örneğin, sistem veritabanlarının yedeklenmesini devre dışı bırakmak veya şifrelemeyi etkinleştirmek istiyorsanız değişiklik yapmanız gerekir.

$vmname = "yourvmname"
$resourcegroupname = "yourresourcegroupname"
$region = "Azure region name such as EASTUS2"
$storage_accountname = "yourstorageaccount"
$storage_url = "https://yourstorageaccount.blob.core.windows.net/"
$retentionperiod = 10
$backupscheduletype = "Manual"
$fullbackupfrequency = "Weekly"
$fullbackupdayofweek = "Saturday"
$fullbackupstarthour = "20"
$fullbackupwindow = "2"
$logbackupfrequency = "30"

# ResourceGroupName is the resource group which is hosting the VM where you are deploying the SQL Server IaaS Extension 

Set-AzVMSqlServerExtension -VMName $vmname `
    -ResourceGroupName $resourcegroupname -Name "SQLIaasExtension" `
    -Version "2.0" -Location $region

# Creates/use a storage account to store the backups

$storage = Get-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -ErrorAction SilentlyContinue
If (-Not $storage)
    { $storage = New-AzStorageAccount -ResourceGroupName $resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

# Creates/uses a custom storage account container

$storage_container = "yourbackupcontainer"

if (!(Get-AzStorageAccount -StorageAccountName $storage_accountname -ResourceGroupName $resourcegroupname | Get-AzStorageContainer | Where-Object { $_.Name -eq $storage_container })){ `
	New-AzStorageContainer -Name $storage_container -Context $storage.Context `
} `
 else `
{ `
	Write-Warning "Container $storage_container already exists." `
}

# Get storage account access key
$accesskey = (Get-AzStorageAccountKey -ResourceGroupName $resourcegroupname  -Name $storage_accountname)[0].value

# Configure Automated Backup settings

Update-AzSqlVM -ResourceGroupName $resourcegroupname -Name $vmname -AutoBackupSettingEnable `
-AutoBackupSettingBackupScheduleType $backupscheduletype `
-AutoBackupSettingFullBackupFrequency $fullbackupfrequency `
-AutoBackupSettingDaysOfWeek $fullbackupdayofweek `
-AutoBackupSettingFullBackupStartTime $fullbackupstarthour `
-AutoBackupSettingFullBackupWindowHour $fullbackupwindow `
-AutoBackupSettingStorageAccessKey $accesskey `
-AutoBackupSettingStorageAccountUrl $storage_url `
-AutoBackupSettingRetentionPeriod $retentionperiod `
-AutoBackupSettingLogBackupFrequency $logbackupfrequency `
-AutoBackupSettingStorageContainerName $storage_container `
-AutoBackupSettingBackupSystemDb

Şifreleme sertifikaları ile yedekleme

Yedeklemelerinizi şifrelemeye karar verirseniz, bir şifreleme sertifikası oluşturulur ve yedeklemelerle aynı depolama hesabına kaydedilir. Bu senaryoda, yedeklemelerinizi şifrelemek ve şifresini çözmek için kullanılan şifreleme sertifikalarını korumak için kullanılacak bir parola da girmeniz gerekir. Bu, yedeklemeleriniz için bu özelliğin yapılandırmasının ötesinde endişelenmenize ve ayrıca yedeklemelerinizin güvenli olduğuna güvenebilmenizi sağlar.

Yedekleme şifrelemesi etkinleştirildiğinde, veritabanlarınızın geri yüklenmesini sağlamak için şifreleme sertifikasının başarıyla oluşturulup oluşturulmadığını ve karşıya yüklenip yüklenmediğini doğrulamanızı kesinlikle öneririz. Bunu yapmak için hemen bir veritabanı oluşturabilir ve şifreleme sertifikalarının ve verilerin yeni oluşturulan kapsayıcıya düzgün bir şekilde yedeklendiğini kontrol edebilirsiniz. Bu, her şeyin doğru yapılandırıldığını ve hiçbir anomali gerçekleşmediğini gösterir.

Sertifika bir nedenle karşıya yüklenemediyse sertifikayı dışarı aktarmak ve kaydetmek için sertifika yöneticisini kullanabilirsiniz. Ancak bu, VM kapatıldığında sertifikaya erişiminizin olmasını sağlamadığından, bunu aynı VM'ye kaydetmek istemezsiniz. Otomatik Yedekleme yapılandırmasını değiştirdikten veya oluşturduktan sonra sertifikanın düzgün yedeklenip yedeklenmediğini öğrenmek için VM'deki olay günlüklerini de denetleyebilirsiniz ve başarısız olup olmadığını öğrenmek için şu hata iletisini görürsünüz:

VM'de Olay Günlüğü'nde gösterilen hata iletisinin ekran görüntüsü.

Sertifikalar doğru yedeklendiyse, Olay Günlükleri'nde şu iletiyi görürsünüz:

Olay günlüklerinde şifreleme sertifikasının başarıyla yedeklenmesinin ekran görüntüsü.

Genel bir uygulama olarak, yedeklemelerinizin durumunu zaman zaman denetlemeniz önerilir. Yedeklemelerinizi geri yükleyebilmek için aşağıdakileri yapmalısınız:

  1. Şifreleme sertifikalarınızın yedeklendiğini ve parolanızı anımsadığınızdan emin olun. Bunu yapmazsanız, yedeklemelerinizin şifresini çözemez ve geri yükleyemezsiniz. Bazı nedenlerden dolayı sertifikalarınız düzgün bir şekilde yedeklenmediyse, aşağıdaki T-SQL sorgusunu yürüterek bunu el ile gerçekleştirebilirsiniz:

    BACKUP MASTER KEY TO FILE = <file_path> ENCRYPTION BY PASSWORD = <password>
    BACKUP CERTIFICATE [AutoBackup_Certificate] TO FILE = <file_path> WITH PRIVATE KEY (FILE = <file_path>, ENCRYPTION BY PASSWORD = <password>)
    
  2. Yedekleme dosyalarınızın en az 1 tam yedekleme ile karşıya yüklendiğini onaylayın. Hatalar oluştuğundan, VM'nizi silmeden önce her zaman en az bir tam yedeklemeye sahip olduğunuzdan veya VM'nizin bozulması durumunda verilerinize erişmeye devam edebilmeniz için her zaman tam yedeklemeye sahip olduğunuzdan emin olmalısınız. VM'nizin veri disklerini silmeden önce depolamadaki yedeklemenin güvenli ve kurtarılabilir olduğundan emin olmanız gerekir.

İzleme

SQL Server 2016 ve sonraki sürümlerde Otomatik Yedekleme'yi izlemek için iki ana seçeneğiniz vardır. Otomatik Yedekleme, SQL Server Yönetilen Yedekleme özelliğini kullandığından, her ikisine de aynı izleme teknikleri uygulanır.

İlk olarak, msdb.managed_backup.sp_get_backup_diagnostics öğesini çağırarak durumu yoklayabilirsiniz. veya msdb.managed_backup.fn_get_health_status table-valued işlevini sorgular.

Bir diğer seçenek de bildirimler için yerleşik Veritabanı Postası özelliğinden yararlanmaktır.

  1. SSMBackup2WANotificationEmailIds parametresine bir e-posta adresi atamak için msdb.managed_backup.sp_set_parameter saklı yordamını çağırın.
  2. Azure VM'den e-posta göndermek için SendGrid'i etkinleştirin.
  3. Veritabanı Postası yapılandırmak için SMTP sunucusunu ve kullanıcı adını kullanın. Veritabanı Postasını, SQL Server Management Studio'da veya Transact-SQL komutlarıyla yapılandırabilirsiniz. Daha fazla bilgi için bkz. Veritabanı Postası.
  4. SQL Server Agent'ı Veritabanı Postası kullanacak şekilde yapılandırın.
  5. SMTP bağlantı noktasına hem yerel VM güvenlik duvarı hem de VM için ağ güvenlik grubu üzerinden izin verilip verilmediğini doğrulayın.

Bilinen sorunlar

Otomatik Yedekleme özelliğiyle çalışırken bu bilinen sorunları göz önünde bulundurun.

Azure portalında Otomatik Yedekleme etkinleştiremiyorum

Aşağıdaki tabloda, Azure portalından Otomatik Yedeklemeyi etkinleştirirken sorun yaşıyorsanız olası çözümler listeleniyor:

Belirti Çözüm
IaaS uzantınız başarısız durumdaysa Otomatik Yedeklemeleri etkinleştirme başarısız olur Başarısız durumdaysa SQL IaaS Aracısı uzantısını onarın.
Yüzlerce veritabanınız varsa Otomatik Yedeklemeyi etkinleştirme işlemi başarısız oluyor Bu, SQL IaaS Aracısı uzantısıyla ilgili bilinen bir sınırlamadır. Bu sorunu geçici olarak çözmek için, Otomatik Yedekleme'yi yapılandırmak için SQL IaaS Aracısı uzantısını kullanmak yerine doğrudan Yönetilen Yedekleme'yi etkinleştirebilirsiniz.
Meta veri sorunları nedeniyle Otomatik Yedeklemeyi etkinleştirme başarısız oluyor SQL IaaS Aracısı hizmetini durdurun. T-SQL komutunu çalıştırın: use msdb exec autoadmin_metadata_delete. SQL IaaS Aracısı hizmetini başlatın ve Azure portalından Otomatik Yedekleme'yi yeniden etkinleştirmeyi deneyin.
FCI için Otomatik Yedeklemeleri Etkinleştirme Özel uç noktaları kullanan yedeklemeler desteklenmez. Yedeklemeniz için tam depolama hesabı URI'sini kullanın.
Otomatik Yedekleme kullanarak Birden Çok SQL örneğini yedekleme Otomatik Yedekleme şu anda yalnızca bir SQL Server örneğini destekler. Birden çok adlandırılmış örneğinize sahipseniz ve varsayılan örnekse, Otomatik Yedekleme varsayılan örnekle çalışır. Birden çok adlandırılmış örneğinize sahipseniz ve varsayılan örnek yoksa Otomatik Yedekleme'yi açma işlemi başarısız olur.
Hesap ve izinler nedeniyle Otomatik Yedekleme etkinleştirilemiyor Aşağıdakileri denetleyin:
- SQL Server Aracısı çalışıyor.
- NT Service\SqlIaaSExtensionQuery hesabı, hem SQL Server içinde hem de Azure portalındaki SQL sanal makineleri kaynağı için Otomatik Yedekleme özelliği için uygun izinlere sahiptir.
- SA hesabı yeniden adlandırılmamıştır, ancak devre dışı bırakmak kabul edilebilir.
SQL 2016 + için Otomatik Yedekleme başarısız oluyor Depolama Hesabında Blob Genel Erişimine İzin Ver etkin. Bu, bilinen bir soruna geçici çözüm sağlar.

Otomatik veya Yönetilen Yedekleme ile ilgili yaygın hatalar

Aşağıdaki tabloda, Otomatik Yedeklemelerle çalışırken olası hatalar ve çözümler listelenir:

Belirti Çözüm
Depolama hesabına bağlantı/Zaman aşımı hataları nedeniyle Otomatik/Yönetilen Yedekleme başarısız oluyor Sanal ağ için Ağ Güvenlik Grubu'nun (NSG) ve Windows Güvenlik Duvarı'nın sanal makineden (VM) 443 numaralı bağlantı noktasındaki depolama hesabına giden bağlantıları engellemediğinden emin olun.
Bellek/GÇ Baskısı nedeniyle Otomatik/Yönetilen Yedekleme başarısız oluyor GÇ/VM sınırlarınız tükeniyorsa En Fazla Sunucu belleğini artırıp artıramadığını ve/veya disk/VM'yi yeniden boyutlandırıp boyutlandıramadığını görün. Kullanılabilirlik grubu kullanıyorsanız yedeklerinizi ikincil çoğaltmaya boşaltmayı göz önünde bulundurun.
Sunucu Yeniden Adlandırıldıktan Sonra Otomatik Yedekleme başarısız oluyor Makinenizin ana bilgisayar adını yeniden adlandırdıysanız, SQL Server içindeki konak adını da yeniden adlandırmanız gerekir.
Hata: İç hata nedeniyle işlem başarısız oldu. Bağımsız değişken boş dize olmamalıdır.\r\nParameter adı: sas Belirteci Lütfen daha sonra yeniden deneyin Bunun nedeni büyük olasılıkla SQL Server Agent hizmetinin doğru kimliğe bürünme izinlerine sahip olmamasıdır. Bu sorunu çözmek için SQL Server Agent hizmetini farklı bir hesap kullanacak şekilde değiştirin.
Hata: Kapsayıcı URL'si geçersiz olduğundan Microsoft Azure'a SQL Server Yönetilen Yedeklemesi SQLServer örneği için varsayılan yedekleme ayarlarını yapılandıramıyor. SAS kimlik bilgilerinizin geçersiz olması da mümkündür Çok sayıda veritabanınız varsa bu hatayı görebilirsiniz. Otomatik Yedekleme yerine Yönetilen yedekleme kullanın.
VM Yeniden Başlatıldıktan Sonra Otomatik Yedekleme işi başarısız oldu SQL Aracısı hizmetinin çalışır durumda olup olmadığını denetleyin.
Yönetilen yedekleme aralıklı olarak başarısız oluyor/Hata:Yürütme zaman aşımı süresi doldu. Bu, SQL Server 2019 için CU18 ve SQL Server 2014-2017 için [KB4040376] ile düzelten bilinen bir sorundur.
Hata: Uzak sunucu bir hata döndürdü: (403) Yasak SQL IaaS Aracısı uzantısını onarın.
Hata 3202: Depolama hesabına yazma işlemi başarısız oldu 13 (Veriler geçersiz) Depolama kapsayıcısı üzerindeki sabit blob ilkesini kaldırın ve depolama hesabının en azından TLS 1.0 kullandığından emin olun.
Hata 3063: Yedekleme bloğu blob cihazına yazma. Cihaz için izin verilen blok sınırına ulaşıldı. Yapılandırmanın olarak ayarlandığı NOikincil bir Always On kullanılabilirlik grubu çoğaltmasından Readable otomatik yedeklemeler çalıştırıyorsanız bu durum oluşabilir. Otomatik yedeklemelerin ikincil çoğaltmada çalışması için çoğaltmanın okunabilir olması gerekir.

Otomatik Yedekleme veya Yönetilen Yedekleme devre dışı bırakılamıyor

Aşağıdaki tabloda, Azure portalından Otomatik Yedekleme'yi devre dışı bırakırken sorun yaşıyorsanız olası çözümler listelenir:

Belirti Çözüm
IaaS uzantınız başarısız durumdaysa Otomatik yedeklemeleri devre dışı bırakma işlemi başarısız olur Başarısız durumdaysa SQL IaaS Aracısı uzantısını onarın.
Meta veri sorunları nedeniyle Otomatik Yedeklemeyi devre dışı bırakma işlemi başarısız oluyor SQL IaaS Aracısı hizmetini durdurun. T-SQL komutunu çalıştırın: use msdb exec autoadmin_metadata_delete. SQL Iaas Aracısı hizmetini başlatın ve Azure portalından Otomatik Yedekleme'yi devre dışı bırakmaya çalışın.
Hesap ve izinler nedeniyle Otomatik Yedekleme devre dışı bırakılamıyor Aşağıdakileri denetleyin:
- SQL Server Aracısı çalışıyor.
- NT Service\SqlIaaSExtensionQuery hesabı, hem SQL Server içinde hem de Azure portalındaki SQL sanal makineleri kaynağı için Otomatik Yedekleme özelliği için uygun izinlere sahiptir.
- SA hesabı yeniden adlandırılmamıştır, ancak devre dışı bırakmak kabul edilebilir.

SQL Server yedeklemelerini hangi hizmetin/uygulamanın aldığını öğrenmek istiyorum

  • SQL Server Management Studio 'da (SSMS) Nesne Gezgini Veritabanına sağ tıklayın Raporları>Seç Standart Raporlar>Yedekleme ve Geri Yükleme Olayları.> Raporda, yedekleme geçmişini görmek için Başarılı Yedekleme İşlemleri bölümünü genişletebilirsiniz.
  • Azure'da veya bir sanal cihazda birden çok yedekleme görüyorsanız, tek tek SQL veritabanlarını yedeklemek için Azure Backup kullanıp kullanmadığınızı veya hesabı kullanan NT Authority/SYSTEM bir sanal cihaza sanal makine anlık görüntüsü alıp almadığınızı denetleyin. Aksi takdirde, yedek alan üçüncü taraf uygulamaları belirlemek için Windows Hizmetleri konsolunu (services.msc) denetleyin.

Sonraki adımlar

Otomatik Yedekleme, Azure VM'lerinde Yönetilen Yedekleme'yi yapılandırıyor. Bu nedenle davranışı ve etkilerini anlamak için Yönetilen Yedekleme belgelerini gözden geçirmek önemlidir.

Azure VM'lerinde SQL Server için ek yedekleme ve geri yükleme yönergelerini şu makalede bulabilirsiniz: Azure sanal makinelerinde SQL Server için yedekleme ve geri yükleme.

Diğer kullanılabilir otomasyon görevleri hakkında bilgi için bkz . SQL Server IaaS Aracısı Uzantısı.

Azure VM'lerinde SQL Server çalıştırma hakkında daha fazla bilgi için bkz . Azure sanal makinelerinde SQL Server'a genel bakış.