لا يؤدي النسخ الاحتياطي المُدار إلى Azure إلى حذف النسخة الاحتياطية بعد فترة الاحتفاظ

dba.stackexchange https://dba.stackexchange.com/questions/128375

سؤال

لقد قمت بإعداد نسخة احتياطية مُدارة من SQL Server لقواعد بياناتنا.لقد حددت أيام الاحتفاظ حتى 4 ، لكنني تحققت للتو من حساب تخزين azure حيث توجد النسخ الاحتياطية المدارة ووجدت أنه لا تزال هناك جميع الملفات من اليوم الذي قمت فيه بإعداد النسخ الاحتياطي المُدار (2015/12/1).

SQL التي استخدمتها في كل قاعدة بيانات مستخدم:

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

نحن نستخدم SQL Server 2014 Enterprise مع Azure VM.

قم بإعداد البرامج التعليمية والمعلومات حول النسخ الاحتياطية المُدارة: MSDN

هل من المفترض أن يقوم النسخ الاحتياطي المُدار من SQL Server إلى Azure بحذف النسخ الاحتياطية تلقائيًا بعد مرور أيام الاحتفاظ المحددة أم أحتاج إلى تنفيذ مهمة مخصصة لذلك؟

هل كانت مفيدة؟

المحلول

انتهى بي الأمر بإنشاء وظيفة وكيل خادم Sql والتي تدير هذا مع وضع بوويرشيل:

# Ps1-script to keep azure storageaccount for managed backups clean

Import-Module Azure

$storageAccount = "STORAGEACCOUNTNAME"
$storageKey = "STORAGEKEY"
$blobContainer = "CONTAINERNAME"

$CleanupTime = [DateTime]::UtcNow.AddDays(-4)
$context = New-AzureStorageContext -StorageAccountName $storageAccount -StorageAccountKey $storageKey
Get-AzureStorageBlob -Container $blobContainer -Context $context | 
Where-Object { $_.LastModified.UtcDateTime -lt $CleanupTime -and $_.BlobType -eq "PageBlob" -and $_.Name -like "*.bak"} |
Remove-AzureStorageBlob
$CleanupTime = [DateTime]::UtcNow.AddDays(-4)
Get-AzureStorageBlob -Container $blobContainer -Context $context | 
Where-Object { $_.LastModified.UtcDateTime -lt $CleanupTime -and $_.BlobType -eq "PageBlob" -and $_.Name -like "*.log"} |
Remove-AzureStorageBlob

يؤدي هذا إلى حذف جميع ملفات .bak و. log التي مضى عليها أكثر من 4 أيام.ومع ذلك ، فإنه لا يعمل على النقط التي لديها عقد إيجار نشط عليها.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى dba.stackexchange
scroll top