Dela via


Hantera automatiserade säkerhetskopieringar (förhandsversion) | SQL Server aktiverat av Azure Arc

gäller för:SQL Server

Azure-tillägget för SQL Server kan utföra säkerhetskopieringar automatiskt till lokal lagring eller nätverksresurser. Säkerhetskopior skrivs till standardplats för säkerhetskopiering för SQL Server som aktiveras av Azure Arc-instansen.

I den här artikeln beskrivs hur du kan:

  • Aktivera automatiserade säkerhetskopieringar
  • Konfigurera säkerhetskopieringsschema

Anmärkning

Som en förhandsversionsfunktion omfattas tekniken som presenteras i den här artikeln av kompletterande användningsvillkor för Microsoft Azure Previews.

De senaste uppdateringarna finns tillgängliga i versionsanteckningar för SQL Server med Azure Arc.

Du kan aktivera automatiserade säkerhetskopieringar via Azure-portalen eller via az CLI.

Om du vill aktivera automatiserade säkerhetskopieringar anger du kvarhållningsdagarna till ett värde som inte är noll.

Automatiserade säkerhetskopior är endast tillgängliga för licenser med Software Assurance, en SQL-prenumeration eller betalning per användning. Mer information finns i Funktionstillgänglighet beroende på licenstyp.

Säkerhetskopieringsfrekvens och kvarhållningsdagar

Du kan konfigurera två egenskaper för automatiserade säkerhetskopieringar:

  • kvarhållningsdagar – antal dagar för att behålla säkerhetskopieringsfilerna. Använd ett tal mellan 1 och 35. Om kvarhållningsdagen för säkerhetskopiering är inställd på 0 inaktiveras automatisk säkerhetskopiering och inga säkerhetskopior görs, även om säkerhetskopieringsprincipen behålls.
  • säkerhetskopieringsschema – schemat där fullständiga säkerhetskopieringar, differentiella säkerhetskopieringar och transaktionsloggar ska utföras. Beror på typ av säkerhetskopiering:
    • Fullständiga säkerhetskopior: Varje dag eller varje vecka
    • Differentiella säkerhetskopior: Var 12:e timme eller var 24:e timme
    • Säkerhetskopior av transaktionslogg: Ökningar på 5 minuter.

Du kan också köra säkerhetskopior enligt ett standardschema för:

  • Kvarhållningsperiod: 7 dagar
  • Fullständiga säkerhetskopior: var 7:e dag
  • Differentiella säkerhetskopior: var 24:e timme
  • Säkerhetskopior av transaktionsloggar: var 5:e minut

Schemanivå för säkerhetskopiering

Du kan schemalägga säkerhetskopieringar på

Om både schemat för säkerhetskopiering på databas- och instansnivå anges har schemat på databasnivå företräde framför säkerhetskopieringsschemat på instansnivå. Om du tar bort säkerhetskopieringsschemat på databasnivå gäller schemat för säkerhetskopiering på instansnivå.

Tilldela behörigheter

Säkerhetskopieringstjänsten i Azure-tillägget för Arc-aktiverade SQL Server använder [NT AUTHORITY\SYSTEM]-kontot för att utföra säkerhetskopiorna. Om du använder SQL Server som aktiveras av Arc med minst behörighetutför ett lokalt Windows-konto – [NT Service\SQLServerExtension] – säkerhetskopieringen.

Anmärkning

Befintliga servrar med tillägget från november 2024-versionen eller senare har automatiskt minst privilegierad konfiguration. Den här ansökan kommer att ske gradvis.

Blockera tilläggsuppgraderingar till november 2024-versionen för att förhindra automatisk tillämpning av lägsta behörighet.

Om du använder Azure-tillägget för SQL Server version 1.1.2504.99 eller senare beviljas de nödvändiga behörigheterna automatiskt till [NT AUTHORITY\SYSTEM]. Du behöver inte tilldela behörigheter manuellt.

För tidigare tillägg som baraföljer du stegen nedan för att tilldela behörighet till [NT AUTHORITY\SYSTEM]-kontot.

Not

Det här kravet gäller för förhandsversionen.

  1. Lägg till [NT AUTHORITY\SYSTEM] konto i Inloggningar och gör det till medlem i dbcreator serverroll på servernivå. Kör följande Transact-SQL för att lägga till det här kontot:

    USE master;
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE = [master];
    GO
    ALTER SERVER ROLE [dbcreator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  2. Lägg till [NT AUTHORITY\SYSTEM] konto i Användare och gör det till medlem i rollen db_backupoperator i master, model, msdboch varje användardatabas.

    Till exempel:

    CREATE USER [NT AUTHORITY\SYSTEM] FOR LOGIN [NT AUTHORITY\SYSTEM];
    GO
    ALTER ROLE [db_backupoperator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  3. Kör föregående kod för varje användare och systemdatabas (förutom tempdb).

Konfigurera automatiserade säkerhetskopieringar

Automatiserade säkerhetskopieringar är inaktiverade som standard.

När du har tilldelat behörigheter kan du schemalägga automatiserade säkerhetskopieringar. När de automatiserade säkerhetskopieringarna har konfigurerats initierar Arc SQL-tillägget en säkerhetskopia till standardplatsen för säkerhetskopiering.

Säkerhetskopiorna är interna SQL Server-säkerhetskopior, så all säkerhetskopieringshistorik är tillgänglig i de säkerhetskopieringsrelaterade tabellerna i msdb-databasen.

Instansnivå

Så här aktiverar du automatiserade säkerhetskopieringar i Azure-portalen:

  1. Inaktivera befintliga rutiner för extern säkerhetskopiering.
  2. Bläddra till den SQL Server som du vill aktivera automatiserade säkerhetskopieringar.
  3. Välj Säkerhetskopieringar.
  4. Välj Konfigurera principer.
  5. Under Konfigurera principer:
    • Ange ett värde för kvarhållningsdagar för säkerhetskopiering – mellan 1 och 35.
    • Ange ett schema för fullständiga säkerhetskopior, differentiella säkerhetskopior och transaktionsloggsäkerhetskopior.
  6. Välj Använd för att aktivera den här konfigurationen.

Ange kvarhållningsperiod och -frekvens för att uppfylla affärskraven. Kvarhållningsprincipen bör vara större än den fullständiga säkerhetskopieringsfrekvensen. Som ett mått på säkerheten håller den automatiserade säkerhetskopieringsprocessen alltid säkerhetskopior med minst en fullständig säkerhetskopieringsfrekvens plus kvarhållningsdagarna.

Databasnivå

Så här konfigurerar du enskild säkerhetskopiering på anpassad databasnivå i portalen:

  1. Välj instansen
  2. Välj databasen
  3. Under datahantering till vänster
  4. Välj Säkerhetskopiering (förhandsversion) – Konfigurera principer för säkerhetskopiering av databaser (förhandsversion)
  5. Välj Konfigurera principer.
  6. Under Konfigurera principer:
    • Ange ett värde för kvarhållningsdagar för säkerhetskopiering – mellan 1 och 35.
    • Ange ett schema för fullständiga säkerhetskopieringar, differentiella säkerhetskopieringar och säkerhetskopieringar av transaktionsloggar.
  7. Välj Använd för att aktivera den här konfigurationen.

Ange kvarhållningsperiod och -frekvens för att uppfylla affärskraven. Kvarhållningsprincipen bör vara större än den fullständiga säkerhetskopieringsfrekvensen. Som ett mått på säkerheten håller den automatiserade säkerhetskopieringsprocessen alltid säkerhetskopior med minst en fullständig säkerhetskopieringsfrekvens plus kvarhållningsdagarna.

Inaktivera automatisk säkerhetskopiering

Om kvarhållningsdagen för säkerhetskopiering är inställd på 0 inaktiveras automatisk säkerhetskopiering och inga säkerhetskopior görs, även om säkerhetskopieringsprincipen behålls. Om du ställer in kvarhållning av säkerhetskopior till ett värde som inte är noll aktiverar du principen igen.

Den här inställningen gäller både säkerhetskopiering på databas- och instansnivå. Om säkerhetskopieringsschemat på databasnivå är inaktiverat görs inga säkerhetskopieringar för databasen även om säkerhetskopiering på instansnivå schemaläggs.

Ta bort automatisk säkerhetskopiering

På portalen för schemaläggning av säkerhetskopiering på enskild databasnivå väljer du Återställ säkerhetskopieringsprincip till instansnivå för att ta bort säkerhetskopieringsprincipen på databasnivå.

Om du vill ta bort säkerhetskopieringsschemat på instansnivå kan du göra det via CLI. När den har tagits bort görs ingen säkerhetskopiering på instansnivå eller databasnivå. Du måste konfigurera ett nytt schema för säkerhetskopiering för att kunna utföra säkerhetskopieringen igen.

Ta bort instansnivåprincip

az sql server-arc backups-policy delete --name <arc-server-name> --resource-group <resourcegroup> 

Exempel:

az sql server-arc backups-policy delete --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup  

Ta bort policy på databasnivå

az sql db-arc backups-policy delete --name <sql-database-name> --server <arc-server-name> --resource-group <resourcegroup> 

Exempel:

az sql db-arc backups-policy delete --name MyDatabaseName --server MyArcServer_SQLServerPROD --resource-group MyResourceGroup 

Visa aktuell säkerhetskopieringspolicy

Om du vill visa den aktuella säkerhetskopieringsprincipen för en SQL Server kör du följande kommando:

az sql server-arc backups-policy show --name <arc-server-name> --resource-group <resourcegroup>

Exempel:

az sql server-arc backups-policy show --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup

Utdata:

{
  "differentialBackupHours": 24,
  "fullBackupDays": 7,
  "instanceName": "MSSQLSERVER01",
  "retentionPeriodDays": 16,
  "transactionLogBackupMinutes": 5
}

Säkerhetskopiera systemdatabaser

När de inbyggda automatiserade säkerhetskopiorna aktiveras på en instans av SQL Server som aktiveras av Azure Arc säkerhetskopieras även systemdatabaserna till standardplatsen för säkerhetskopiering. Endast fullständiga säkerhetskopior utförs för systemdatabaserna.

Överväganden

  • Säkerhetskopieringsfilerna lagras på standardplatsen för säkerhetskopiering enligt konfigurationen på SQL Server-instansnivå.

  • Kör för att hitta standardplatsen för säkerhetskopiering för en SQL Server-instans (på SQL Server 2019 (15.x) och senare:

    SELECT SERVERPROPERTY('InstanceDefaultBackupPath');
    
  • För SQL Server-versioner under 2019 lagras standardsökvägen för säkerhetskopiering i en registerinställning. Konfigurera den här inställningen med den utökade lagrade proceduren xp_instance_regwrite eller från SQL Server Management Studio (SSMS). Så här använder du SSMS:

    1. Anslut till Arc-aktiverad SQL Server från SSMS.
    2. Gå till Serveregenskaper>Databasinställningar>Databasstandardplatser.
  • Säkerhetskopieringsprincipen som konfigurerats på instansnivå gäller för alla databaser på instansen.

  • Om både säkerhetskopieringsscheman på databas- och instansnivå anges har databasnivån företräde framför säkerhetskopieringsschemat på instansnivå. Om du tar bort säkerhetskopieringsschemat på databasnivå återgår du till säkerhetskopieringsschemat på instansnivå om det finns något.

  • Värdet för --name ska vara namnet på DEN SQL Server som aktiveras av Azure Arc, som vanligtvis är i [Servername_SQLservername] format.

  • Värdet för --retention-days kan vara mellan 0 och 35.

  • Värdet 0 för --retention-days anger att inte utföra automatiserade säkerhetskopieringar för instansen eller databasen.

  • Om det finns flera SQL Server-instanser på samma värd där Azure-tillägget för SQL Server är installerat måste du konfigurera automatiserade säkerhetskopieringar separat för varje instans.

  • Om du ändrar --retention-days när --backups-policy redan har konfigurerats börjar alla ändringar gälla framöver och tillämpas inte retroaktivt.

Begränsningar

  • Automatisk säkerhetskopiering till URL är inte tillgänglig för närvarande.
  • Användardatabaserna måste vara i en fullständig återställningsmodell för att säkerhetskopiorna ska kunna utföras. Databaser som inte är i en fullständig återställningsmodell säkerhetskopieras inte automatiskt.
  • Automatiserade säkerhetskopieringar stöds för närvarande inte för AlwaysOn-redundansklusterinstanser (FCI).
  • Automatiserade säkerhetskopieringar stöds inte på någon instans som är värd för en tillgänglighetsgruppsreplik (AG).
  • Automatiserade säkerhetskopior är endast tillgängliga för licenser med Software Assurance, SQL-prenumeration eller betala efter användning. Mer information finns i Funktionstillgänglighet beroende på licenstyp.