Konfigurera säkerhetskopior på sekundära repliker av en AlwaysOn-tillgänglighetsgrupp

Gäller för:SQL Server

Det här avsnittet beskriver hur du konfigurerar säkerhetskopiering på sekundära repliker för en AlwaysOn-tillgänglighetsgrupp med hjälp av SQL Server Management Studio, Transact-SQL eller PowerShell i SQL Server.

Note

En introduktion till säkerhetskopiering på sekundära repliker finns i Active Secondaries: Backup on Secondary Replicas (AlwaysOn Availability Groups).

Förutsättningar

Du måste vara ansluten till den serverinstans som är värd för den primära repliken i SSMS. Den sekundära repliken måste vara felfri, vilket innefattar att vara ansluten till den aktuella primära repliken och i den sekundära rollen.

Note

Den sekundära repliken behöver inte vara läsbar för att avlasta säkerhetskopior till den. Säkerhetskopior kan fortfarande utföras på den sekundära repliken även om Readable Secondary är inställd på no, med undantag för hanterade säkerhetskopior.

behörigheter

Uppgift behörigheter
Konfigurera säkerhetskopiering på sekundära repliker när du skapar en tillgänglighetsgrupp Kräver medlemskap i den fasta serverrollen sysadmin och antingen CREATE AVAILABILITY GROUP serverbehörighet, ALTER ANY-AVAILABILITY GROUP-behörighet eller CONTROL SERVER-behörighet.
Ändra en tillgänglighetsgrupp eller tillgänglighetsreplik Kräver behörighet för ALTER AVAILABILITY GROUP på tillgänglighetsgruppen, behörigheten CONTROL AVAILABILITY GROUP, behörigheten ALTER ANY AVAILABILITY GROUP eller behörigheten CONTROL SERVER.

Använda SQL Server Management Studio

Så här konfigurerar du säkerhetskopiering på sekundära repliker

  1. I Object Explorer ansluter du till den serverinstans som är värd för den primära repliken och klickar på servernamnet för att expandera serverträdet.

  2. Expandera noden Always On High Availability och noden Tillgänglighetsgrupper.

  3. Klicka på den tillgänglighetsgrupp vars säkerhetskopieringsinställningar du vill konfigurera och välj kommandot Egenskaper .

  4. I dialogrutan Egenskaper för tillgänglighetsgrupp väljer du sidan Inställningar för säkerhetskopiering .

  5. På panelen Var ska säkerhetskopieringar ske? väljer du inställningen för automatisk säkerhetskopiering för tillgänglighetsgruppen, något av:

    Föredrar sekundär
    Anger att säkerhetskopieringar ska ske på en sekundär replik, förutom när den primära repliken är den enda repliken online. I så fall bör säkerhetskopieringen ske på den primära repliken. Det här är standardalternativet.

    Endast sekundär
    Anger att säkerhetskopieringar aldrig ska utföras på den primära repliken. Om den primära repliken är den enda repliken online ska säkerhetskopieringen inte ske.

    primär
    Anger att säkerhetskopiorna alltid ska ske på den primära repliken. Det här alternativet är användbart om du behöver säkerhetskopieringsfunktioner, till exempel att skapa differentiella säkerhetskopior, som inte stöds när säkerhetskopiering körs på en sekundär replik.

    Important

    Om du planerar att använda loggöverföring för att förbereda sekundära databaser för en tillgänglighetsgrupp anger du inställningen för automatisk säkerhetskopiering till Primär tills alla sekundära databaser har förberetts och anslutits till tillgänglighetsgruppen.

    Valfri replika
    Anger att du vill att säkerhetskopieringsjobb ska ignorera tillgänglighetsreplikernas roll när repliken som ska utföra säkerhetskopieringar väljs. Observera att säkerhetskopieringsjobb kan utvärdera andra faktorer, till exempel säkerhetskopieringsprioritet för varje tillgänglighetsreplik i kombination med dess drifttillstånd och anslutna tillstånd.

    Important

    Inställningen för automatisk säkerhetskopiering efterlevs inte. Tolkningen av den här preferensen beror på vilken logik, om det finns någon, som du skriver in i säkerhetskopieringsjobben för databaserna inom en viss tillgänglighetsgrupp. Inställningen för automatisk säkerhetskopiering har ingen inverkan på ad hoc-säkerhetskopior. Mer information finns i Uppföljning: När du har konfigurerat säkerhetskopiering på sekundära repliker senare i det här avsnittet.

  6. Använd rutnätet För säkerhetskopiering av repliker för att ändra säkerhetskopieringsprioriteten för tillgänglighetsreplikerna. Det här rutnätet visar den aktuella säkerhetskopieringsprioriteten för varje serverinstans som är värd för en replik för tillgänglighetsgruppen. Kolumnerna i rutnätet är följande:

    Serverinstans
    Namnet på instansen av SQL Server som är värd för tillgänglighetsrepliken.

    Säkerhetskopieringsprioritet (lägsta=1, högsta=100)
    Anger din prioritet för att utföra säkerhetskopior på den här repliken i förhållande till de andra replikerna i samma tillgänglighetsgrupp. Värdet är ett heltal i intervallet 0..100. 1 anger den lägsta prioriteten och 100 anger högsta prioritet. Om säkerhetskopieringsprioritet = 1 väljs tillgänglighetsrepliken endast för säkerhetskopieringar om inga tillgänglighetsrepliker med högre prioritet är tillgängliga för närvarande.

    Exkludera replika
    Välj om du aldrig vill att den här tillgänglighetsrepliken ska väljas för säkerhetskopiering. Detta är användbart, till exempel för en fjärreplik för tillgänglighet som du aldrig vill att säkerhetskopieringen ska växla över till.

  7. Om du vill checka in ändringarna klickar du på OK.

Alternativa sätt att komma åt sidan Inställningar för säkerhetskopiering

Använda Transact-SQL

Så här konfigurerar du säkerhetskopiering på sekundära repliker

  1. Anslut till den serverinstans som är värd för den primära repliken.

  2. För en ny tillgänglighetsgrupp använder du CREATE AVAILABILITY GROUPinstruktionen (Transact-SQL). Om du ändrar en befintlig tillgänglighetsgrupp använder du instruktionen ALTER AVAILABILITY GROUP (Transact-SQL).

Med hjälp av PowerShell

Så här konfigurerar du säkerhetskopiering på sekundära repliker

  1. Ange standardvärdet (cd) till den serverinstans som är värd för den primära repliken.

  2. Du kan också konfigurera säkerhetskopieringsprioriteten för varje tillgänglighetsreplik som du lägger till eller ändrar. Den här prioriteten används av den serverinstans som är värd för den primära repliken för att avgöra vilken replik som ska betjäna en automatisk säkerhetskopieringsbegäran på en databas i tillgänglighetsgruppen (repliken med högsta prioritet väljs). Den här prioriteten kan vara valfritt tal mellan 0 och 100, inklusive. Prioriteten 0 anger att repliken inte ska betraktas som en kandidat för att hantera säkerhetskopieringsbegäranden. Standardinställningen är 50.

    När du lägger till en tillgänglighetsreplik i en tillgänglighetsgrupp använder du cmdleten New-SqlAvailabilityReplica . När du ändrar en befintlig tillgänglighetsreplik använder du cmdleten Set-SqlAvailabilityReplica . I båda fallen anger du parametern BackupPriorityn , där n är ett värde från 0 till 100.

    Följande kommando anger till exempel säkerhetskopieringsprioriteten för tillgänglighetsrepliken MyReplica till 60.

    Set-SqlAvailabilityReplica -BackupPriority 60 `  
    -Path SQLSERVER:\Sql\Computer\Instance\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica  
    
  3. Du kan också konfigurera inställningen för automatisk säkerhetskopiering för den tillgänglighetsgrupp som du skapar eller ändrar. Den här inställningen anger hur ett säkerhetskopieringsjobb ska utvärdera den primära repliken när du väljer var du vill utföra säkerhetskopior. Standardinställningen är att föredra sekundära repliker.

    När du skapar en tillgänglighetsgrupp använder du cmdleten New-SqlAvailabilityGroup . När du ändrar en befintlig tillgänglighetsgrupp använder du cmdleten Set-SqlAvailabilityGroup . I båda fallen anger du parametern AutomatedBackupPreference .

    där,

    primär
    Anger att säkerhetskopiorna alltid ska ske på den primära repliken. Det här alternativet är användbart om du behöver säkerhetskopieringsfunktioner, till exempel att skapa differentiella säkerhetskopior, som inte stöds när säkerhetskopiering körs på en sekundär replik.

    Important

    Om du planerar att använda loggöverföring för att förbereda sekundära databaser för en tillgänglighetsgrupp anger du inställningen för automatisk säkerhetskopiering till Primär tills alla sekundära databaser har förberetts och anslutits till tillgänglighetsgruppen.

    SecondaryOnly
    Anger att säkerhetskopieringar aldrig ska utföras på den primära repliken. Om den primära repliken är den enda repliken online ska säkerhetskopieringen inte ske.

    Sekundär
    Anger att säkerhetskopieringar ska ske på en sekundär replik, förutom när den primära repliken är den enda repliken online. I så fall bör säkerhetskopieringen ske på den primära repliken. Det här är standardbeteendet.

    Nej
    Anger att du vill att säkerhetskopieringsjobb ska ignorera tillgänglighetsreplikernas roll när repliken som ska utföra säkerhetskopieringar väljs. Observera att säkerhetskopieringsjobb kan utvärdera andra faktorer, till exempel säkerhetskopieringsprioritet för varje tillgänglighetsreplik i kombination med dess drifttillstånd och anslutna tillstånd.

    Important

    Det finns ingen tillämpning av AutomatedBackupPreference. Tolkningen av den här preferensen beror på vilken logik, om det finns någon, som du skriver in i säkerhetskopieringsjobben för databaserna inom en viss tillgänglighetsgrupp. Inställningen för automatisk säkerhetskopiering har ingen inverkan på ad hoc-säkerhetskopior. Mer information finns i Uppföljning: När du har konfigurerat säkerhetskopiering på sekundära repliker senare i det här avsnittet.

    Följande kommando anger till exempel egenskapen AutomatedBackupPreference i tillgänglighetsgruppen MyAg till SecondaryOnly. Automatiserade säkerhetskopieringar av databaser i den här tillgänglighetsgruppen sker aldrig på den primära repliken, men omdirigeras till den sekundära repliken med den högsta inställningen för säkerhetskopieringsprioritet.

    Set-SqlAvailabilityGroup `  
    -Path SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg `  
    -AutomatedBackupPreference SecondaryOnly  
    

Note

Om du vill visa syntaxen för en cmdlet använder du cmdleten Get-Help i SQL Server PowerShell-miljön. Mer information finns i Hämta hjälp för SQL Server PowerShell.

Konfigurera och använda SQL Server PowerShell-providern

Uppföljning: När du har konfigurerat säkerhetskopiering på sekundära repliker

Om du vill ta hänsyn till den automatiska säkerhetskopieringsinställningen för en viss tillgänglighetsgrupp på varje serverinstans som är värd för en tillgänglighetsreplik vars säkerhetskopieringsprioritet är större än noll (>0) måste du skripta säkerhetskopieringsjobb för databaserna i tillgänglighetsgruppen. Om du vill ta reda på om den aktuella repliken är den föredragna säkerhetskopieringsrepliken använder du funktionen sys.fn_hadr_backup_is_preferred_replica i säkerhetskopieringsskriptet. Om tillgänglighetsrepliken som hanteras av den aktuella serverinstansen är den föredragna repliken för säkerhetskopior returnerar den här funktionen 1. Annars returnerar funktionen 0. Genom att köra ett enkelt skript på varje tillgänglighetsreplik som frågar den här funktionen kan du avgöra vilken replik som ska köra ett visst säkerhetskopieringsjobb. Ett typiskt kodfragment av ett skript för säkerhetskopieringsjobb skulle till exempel se ut så här:

IF (sys.fn_hadr_backup_is_preferred_replica(@DBNAME) != 1)  
BEGIN  
      Select 'This is not the preferred replica, exiting with success';  
      RETURN 0 -- This is a normal, expected condition, so the script returns success  
END  
BACKUP DATABASE @DBNAME TO DISK = '<path to backup file>'  
   WITH COPY_ONLY;  

Genom att skripta ett säkerhetskopieringsjobb med den här logiken kan du schemalägga jobbet så att det körs på varje tillgänglighetsreplik enligt samma schema. Vart och ett av dessa jobb tittar på samma data för att avgöra vilket jobb som ska köras, så endast ett av det schemalagda jobbet fortsätter faktiskt till säkerhetskopieringssteget. Vid en växling till reservsystem behöver varken skript eller jobb ändras. Dessutom, om du konfigurerar om en tillgänglighetsgrupp för att lägga till en tillgänglighetsreplik, behöver du bara kopiera eller schemalägga säkerhetskopieringsjobbet för att hantera det. Om du tar bort en tillgänglighetsreplik tar du helt enkelt bort säkerhetskopieringsjobbet från serverinstansen som var värd för repliken.

Tip

Om du använder guiden Underhållsplan för att skapa ett visst säkerhetskopieringsjobb kommer jobbet automatiskt att inkludera skriptlogik som anropar och kontrollerar funktionen sys.fn_hadr_backup_is_preferred_replica . Säkerhetskopieringsjobbet returnerar dock inte meddelandet "Det här är inte den föredragna repliken...". Se till att skapa jobben för varje tillgänglighetsdatabas på varje serverinstans som är värd för en tillgänglighetsreplik i tillgänglighetsgruppen.

Hämta information om inställningar för säkerhetskopiering

Följande är användbara för att hämta information som är relevant för säkerhetskopiering på sekundär.

View Information Relevanta kolumner
sys.fn_hadr_backup_is_preferred_replica Är den aktuella repliken den föredragna säkerhetskopieringsrepliken? Ej tillämpbart.
sys.availability_groups Inställningar för automatisk säkerhetskopiering automated_backup_preference

automated_backup_preference_desc
sys.availability_replicas Säkerhetskopieringsprioritet för en angiven tillgänglighetsreplik backup_priority
sys.dm_hadr_availability_replica_states Är repliken lokal för serverinstansen?

Aktuell roll

Drifttillstånd

Anslutet tillstånd

Synkroniseringshälsa för en tillgänglighetsreplik
is_local

roll, role_desc

operational_state, operational_state_desc

connected_state, connected_state_desc

synchronization_health, synchronization_health_desc

Relaterat innehåll

Se även

översikt över AlwaysOn-tillgänglighetsgrupper (SQL Server)
Aktiva sekundärfiler: Säkerhetskopiering på sekundära repliker (AlwaysOn-tillgänglighetsgrupper)