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å
- Instansnivå
- Databasnivå (tillgänglig från tilläggsversion 1.1.2594.118 eller senare)
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.
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
Lägg till
[NT AUTHORITY\SYSTEM]
konto i Användare och gör det till medlem i rollen db_backupoperator imaster
,model
,msdb
och 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
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:
- Inaktivera befintliga rutiner för extern säkerhetskopiering.
- Bläddra till den SQL Server som du vill aktivera automatiserade säkerhetskopieringar.
- Välj Säkerhetskopieringar.
- Välj Konfigurera principer.
- 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.
- 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:
- Välj instansen
- Välj databasen
- Under datahantering till vänster
- Välj Säkerhetskopiering (förhandsversion) – Konfigurera principer för säkerhetskopiering av databaser (förhandsversion)
- Välj Konfigurera principer.
- 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.
- 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:- Anslut till Arc-aktiverad SQL Server från SSMS.
- 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.