Automatisk säkerhetskopiering för virtuella SQL Server 2014-datorer (Resource Manager)

Gäller för: SQL Server på en virtuell Azure-dator

Automatisk säkerhetskopiering konfigurerar automatiskt hanterad säkerhetskopiering till Microsoft Azure för alla befintliga och nya databaser på en virtuell Azure-dator som kör SQL Server 2014 Standard eller Enterprise. På så sätt kan du konfigurera regelbundna databassäkerhetskopior som använder beständig Azure Blob Storage. Automatisk säkerhetskopiering är beroende av SQL Server IaaS-agenttillägg (Infrastruktur som en tjänst).

Anteckning

Azure har två olika distributionsmodeller som du kan använda för att skapa och arbeta med resurser: Azure Resource Manager och klassisk. Den här artikeln beskriver hur du använder distributionsmodellen Resource Manager. Vi rekommenderar Resource Manager distributionsmodell för nya distributioner i stället för den klassiska distributionsmodellen.

Förutsättningar

Tänk på följande om du vill använda automatisk säkerhetskopiering:

Operativsystem:

  • Windows Server 2012 och större

SQL Server version/utgåva:

  • SQL Server 2014 Standard
  • SQL Server 2014 Enterprise

Anteckning

Information om SQL 2016 och senare finns i Automatiserad säkerhetskopiering för SQL Server 2016.

Databaskonfiguration:

  • Målanvändardatabaser måste använda den fullständiga återställningsmodellen. Systemdatabaser behöver inte använda den fullständiga återställningsmodellen. Men om du kräver att loggsäkerhetskopior görs för Model eller MSDB måste du använda den fullständiga återställningsmodellen. Mer information om effekten av den fullständiga återställningsmodellen på säkerhetskopior finns i Säkerhetskopiering under den fullständiga återställningsmodellen.
  • Den SQL Server virtuella datorn har registrerats med SQL IaaS Agent-tillägget i fullständigt hanteringsläge.
  • Automatisk säkerhetskopiering är beroende av det fullständiga SQL Server IaaS-agenttillägget. Därför stöds automatisk säkerhetskopiering endast på måldatabaser från standardinstansen eller en enda namngiven instans. Om det inte finns någon standardinstans och flera namngivna instanser misslyckas SQL IaaS-tillägget och automatisk säkerhetskopiering fungerar inte.

Inställningar

I följande tabell beskrivs de alternativ som kan konfigureras för automatisk säkerhetskopiering. De faktiska konfigurationsstegen varierar beroende på om du använder kommandona Azure Portal eller Azure Windows PowerShell. Observera att automatisk säkerhetskopiering använder komprimering av säkerhetskopior som standard och att du inte kan inaktivera det.

Inställning Intervall (standard) Description
Automatisk säkerhetskopiering Aktivera/inaktivera (inaktiverad) Aktiverar eller inaktiverar automatisk säkerhetskopiering för en virtuell Azure-dator som kör SQL Server 2014 Standard eller Enterprise.
Djurhållningsperioden 1–90 dagar (90 dagar) Antal dagar som en säkerhetskopia ska behållas.
Lagringskonto Azure Storage-konto Ett Azure Storage-konto som ska användas för att lagra automatiska säkerhetskopieringsfiler i Blob Storage. En container skapas på den här platsen för att lagra alla säkerhetskopierade filer. Namngivningskonventionen för säkerhetskopior innehåller datum, tid och datornamn.
Kryptering Aktivera/inaktivera (inaktiverad) Aktiverar eller inaktiverar kryptering. När kryptering är aktiverat finns de certifikat som används för att återställa säkerhetskopian i det angivna lagringskontot i samma automaticbackup container med samma namngivningskonvention. Om lösenordet ändras genereras ett nytt certifikat med det lösenordet, men det gamla certifikatet finns kvar för att återställa tidigare säkerhetskopior.
Lösenord Lösenordstext Ett lösenord för krypteringsnycklar. Detta krävs endast om kryptering är aktiverat. För att kunna återställa en krypterad säkerhetskopia måste du ha rätt lösenord och relaterat certifikat som användes när säkerhetskopieringen gjordes.

Konfigurera nya virtuella datorer

Använd Azure Portal för att konfigurera automatisk säkerhetskopiering när du skapar en ny virtuell SQL Server 2014-dator i Resource Manager-distributionsmodellen.

På fliken SQL Server inställningar rullar du ned till Automatisk säkerhetskopiering och väljer Aktivera. Följande Azure Portal skärmbild som visar inställningarna för automatisk SÄKERHETSKOPIERing av SQL.

Konfiguration av automatisk säkerhetskopiering av SQL i Azure Portal

Konfigurera befintliga virtuella datorer

För befintliga SQL Server virtuella datorer kan du aktivera och inaktivera automatiserade säkerhetskopieringar, ändra kvarhållningsperioden, ange lagringskontot och aktivera kryptering från Azure Portal.

Gå till resursen för virtuella SQL-datorer för din virtuella SQL Server 2014 och välj sedan Säkerhetskopieringar.

Automatisk SQL-säkerhetskopiering för befintliga virtuella datorer

När du är klar väljer du knappen Tillämpa längst ned på sidan Säkerhetskopior för att spara ändringarna.

Om du aktiverar automatisk säkerhetskopiering för första gången konfigurerar Azure SQL Server IaaS-agenten i bakgrunden. Under den här tiden kanske Azure Portal inte visar att automatisk säkerhetskopiering har konfigurerats. Vänta några minuter tills agenten har installerats och konfigurerats. Därefter återspeglar Azure Portal de nya inställningarna.

Anteckning

Du kan också konfigurera automatisk säkerhetskopiering med hjälp av en mall. Mer information finns i Azure-snabbstartsmall för automatisk säkerhetskopiering.

Konfigurera med PowerShell

Du kan använda PowerShell för att konfigurera automatisk säkerhetskopiering. Innan du börjar måste du:

Anteckning

Den här artikeln använder Azure Az PowerShell-modulen, som är den rekommenderade PowerShell-modulen för att interagera med Azure. För att komma igång med Az PowerShell kan du läsa artikeln om att installera Azure PowerShell. Information om hur du migrerar till Az PowerShell-modulen finns i artikeln om att migrera Azure PowerShell från AzureRM till Az.

Verifiera nuvarande inställningar

Om du har aktiverat automatisk säkerhetskopiering under etableringen kan du använda PowerShell för att kontrollera din aktuella konfiguration. Kör kommandot Get-AzVMSqlServerExtension och granska egenskapen AutoBackupSettings :

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

Du bör få utdata som liknar följande:

Enable                      : False
EnableEncryption            : False
RetentionPeriod             : -1
StorageUrl                  : NOTSET
StorageAccessKey            : 
Password                    : 
BackupSystemDbs             : False
BackupScheduleType          : 
FullBackupFrequency         : 
FullBackupStartTime         : 
FullBackupWindowHours       : 
LogBackupFrequency          : 

Om dina utdata visar att Aktivera är inställt på Falskt måste du aktivera automatisk säkerhetskopiering. Den goda nyheten är att du aktiverar och konfigurerar automatisk säkerhetskopiering på samma sätt. Se nästa avsnitt för den här informationen.

Anteckning

Om du kontrollerar inställningarna direkt efter att du har gjort en ändring är det möjligt att du får tillbaka de gamla konfigurationsvärdena. Vänta några minuter och kontrollera inställningarna igen för att kontrollera att ändringarna har tillämpats.

Konfigurera automatisk säkerhetskopiering

Du kan använda PowerShell för att aktivera automatisk säkerhetskopiering samt ändra dess konfiguration och beteende när som helst.

Välj eller skapa först ett lagringskonto för säkerhetskopieringsfilerna. Följande skript väljer ett lagringskonto eller skapar det om det inte finns.

$storage_accountname = "yourstorageaccount"
$storage_resourcegroupname = $resourcegroupname

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

Anteckning

Automatisk säkerhetskopiering stöder inte lagring av säkerhetskopior i Premium Storage, men det kan ta säkerhetskopior från vm-diskar som använder Premium Storage.

Använd sedan kommandot New-AzVMSqlServerAutoBackupConfig för att aktivera och konfigurera inställningarna för automatisk säkerhetskopiering för att lagra säkerhetskopior i Azure Storage-kontot. I det här exemplet behålls säkerhetskopiorna i 10 dagar. Det andra kommandot , Set-AzVMSqlServerExtension, uppdaterar den angivna virtuella Azure-datorn med de här inställningarna.

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -RetentionPeriodInDays 10 -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Det kan ta flera minuter att installera och konfigurera SQL Server IaaS-agenten.

Anteckning

Det finns andra inställningar för New-AzVMSqlServerAutoBackupConfig som endast gäller för SQL Server 2016 och Automatisk säkerhetskopiering v2. SQL Server 2014 stöder inte följande inställningar: BackupSystemDbs, BackupScheduleType, FullBackupFrequency, FullBackupStartHour, FullBackupWindowInHours och LogBackupFrequencyInMinutes. Om du försöker konfigurera de här inställningarna på en virtuell SQL Server 2014-dator uppstår inget fel, men inställningarna tillämpas inte. Om du vill använda de här inställningarna på en virtuell SQL Server 2016-dator kan du läsa Automatiserad säkerhetskopiering v2 för SQL Server 2016 virtuella Azure-datorer.

Om du vill aktivera kryptering ändrar du det tidigare skriptet så att parametern EnableEncryption skickas tillsammans med ett lösenord (säker sträng) för parametern CertificatePassword . Följande skript aktiverar inställningarna för automatisk säkerhetskopiering i föregående exempel och lägger till kryptering.

$password = "P@ssw0rd"
$encryptionpassword = $password | ConvertTo-SecureString -AsPlainText -Force

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -EnableEncryption -CertificatePassword $encryptionpassword `
    -RetentionPeriodInDays 10 -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Kontrollera konfigurationen för automatisk säkerhetskopiering för att bekräfta att inställningarna tillämpas.

Inaktivera automatisk säkerhetskopiering

Om du vill inaktivera automatisk säkerhetskopiering kör du samma skript utan parametern -Enable till kommandot New-AzVMSqlServerAutoBackupConfig . Avsaknaden av parametern -Enable signalerar kommandot för att inaktivera funktionen. Precis som med installationen kan det ta flera minuter att inaktivera automatisk säkerhetskopiering.

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -ResourceGroupName $storage_resourcegroupname

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Exempelskript

Följande skript innehåller en uppsättning variabler som du kan anpassa för att aktivera och konfigurera automatisk säkerhetskopiering för den virtuella datorn. I ditt fall kan du behöva anpassa skriptet baserat på dina krav. Du måste till exempel göra ändringar om du vill inaktivera säkerhetskopieringen av systemdatabaser eller aktivera kryptering.

$vmname = "yourvmname"
$resourcegroupname = "vmresourcegroupname"
$region = "Azure region name such as EASTUS2"
$storage_accountname = "storageaccountname"
$storage_resourcegroupname = $resourcegroupname
$retentionperiod = 10

# 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 $storage_resourcegroupname `
    -Name $storage_accountname -SkuName Standard_GRS -Location $region }

# Configure Automated Backup settings

$autobackupconfig = New-AzVMSqlServerAutoBackupConfig -Enable `
    -RetentionPeriodInDays $retentionperiod -StorageContext $storage.Context `
    -ResourceGroupName $storage_resourcegroupname

# Apply the Automated Backup settings to the VM

Set-AzVMSqlServerExtension -AutoBackupSettings $autobackupconfig `
    -VMName $vmname -ResourceGroupName $resourcegroupname

Övervakning

Om du vill övervaka automatisk säkerhetskopiering SQL Server 2014 har du två huvudsakliga alternativ. Eftersom automatisk säkerhetskopiering använder funktionen SQL Server hanterad säkerhetskopiering gäller samma övervakningstekniker för båda.

Först kan du avsöka statusen genom att anropa msdb.smart_admin.sp_get_backup_diagnostics. Eller fråga tabellvärdefunktionen msdb.smart_admin.fn_get_health_status .

Anteckning

Schemat för hanterad säkerhetskopiering i SQL Server 2014 är msdb.smart_admin. I SQL Server 2016 ändrades detta till msdb.managed_backup och referensavsnitten använder det här nyare schemat. Men för SQL Server 2014 måste du fortsätta att använda schemat smart_admin för alla hanterade säkerhetskopieringsobjekt.

Ett annat alternativ är att dra nytta av den inbyggda Database Mail funktionen för meddelanden.

  1. Anropa den lagrade proceduren msdb.smart_admin.sp_set_parameter för att tilldela en e-postadress till parametern SSMBackup2WANotificationEmailIds .
  2. Aktivera SendGrid för att skicka e-postmeddelanden från den virtuella Azure-datorn.
  3. Använd SMTP-servern och användarnamnet för att konfigurera Database Mail. Du kan konfigurera Database Mail i SQL Server Management Studio eller med Transact-SQL-kommandon. Mer information finns i Database Mail.
  4. Konfigurera SQL Server Agent att använda Database Mail.
  5. Kontrollera att SMTP-porten tillåts både via den lokala virtuella datorns brandvägg och nätverkssäkerhetsgruppen för den virtuella datorn.

Nästa steg

Automatisk säkerhetskopiering konfigurerar hanterad säkerhetskopiering på virtuella Azure-datorer. Därför är det viktigt att granska dokumentationen för Hanterad säkerhetskopiering den SQL Server 2014.

Du hittar ytterligare vägledning för säkerhetskopiering och återställning för SQL Server på virtuella Azure-datorer i följande artikel: Säkerhetskopiering och återställning för SQL Server på virtuella Azure-datorer.

Information om andra tillgängliga automatiseringsuppgifter finns i SQL Server IaaS-agenttillägg.

Mer information om hur du kör SQL Server på virtuella Azure-datorer finns i översikten över SQL Server på virtuella Azure-datorer.