Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server op Azure VM (alleen Windows)
In dit artikel leert u hoe u een back-up maakt van SQL Server op Azure Virtual Machines -databases (VM's) vanuit een URL met behulp van door Microsoft Entra beheerde identiteiten.
Overzicht
Vanaf SQL Server 2022 Cumulatieve update 17 (CU17) kunt u beheerde identiteiten gebruiken met SQL Server-referenties om een back-up te maken van SQL Server op Azure VM-databases en deze te herstellen vanuit Azure Blob Storage. Beheerde identiteiten bieden een identiteit die toepassingen kunnen gebruiken bij het maken van verbinding met resources die ondersteuning bieden voor Microsoft Entra-verificatie.
Het gebruik van beheerde identiteiten in de referenties voor de BACKUP TO URL
T-SQL-bewerkingen RESTORE FROM URL
wordt alleen ondersteund door SQL Server op Azure-VM's. Het gebruik van beheerde identiteiten met sql Server on-premises naar BACKUP TO URL
en RESTORE FROM URL
wordt niet ondersteund.
Vereiste voorwaarden
- Een SQL Server op Azure VM met SQL Server 2022 CU17 of hoger die is geregistreerd bij de SQL IaaS Agent-extensie.
- Het SQL Server-exemplaar dat een back-up maakt naar of herstelt van een URL moet geconfigureerd zijn met Microsoft Entra-verificatie, ongeacht of het exemplaar is geregistreerd bij de extensie.
- Een Azure Blob Storage-account.
- Geldige netwerktoegang tot de Azure Blob Storage- en Windows Firewall-machtigingen op de host om de uitgaande verbinding en geldige service-eindpunten voor het opslagaccount toe te staan.
- De primaire beheerde identiteit voor de SQL Server op azure-VM heeft het volgende nodig:
- Worden toegewezen met een door de gebruiker toegewezen beheerde identiteit of door het systeem toegewezen beheerde identiteit. Zie Beheerde identiteiten configureren op virtuele Azure-machines (VM's) voor meer informatie.
- Om de
Storage Blob Data Contributor
rol toe te wijzen aan de primaire beheerde identiteit die bij het opslagaccount hoort.
Een serverreferentie maken met beheerde identiteiten
Als u de T-SQL-opdrachten BACKUP DATABASE <database name> TO URL
en RESTORE <database name> FROM URL
met beheerde identiteiten wilt gebruiken, moet u een serverreferentie maken die gebruikmaakt van de beheerde identiteit. De referentienaam vertegenwoordigt de AZURE-opslag-URL en geeft aan waar de databaseback-up is opgeslagen.
In het volgende voorbeeld ziet u hoe u een referentie maakt voor een beheerde identiteit:
CREATE CREDENTIAL [https://<storage-account-name>.blob.core.windows.net/<container-name>]
WITH IDENTITY = 'Managed Identity'
Voor de WITH IDENTITY = 'Managed Identity'
component is een primaire beheerde identiteit vereist die is toegewezen aan de SQL Server op azure-VM.
Zie de sectie Foutberichten voor meer informatie over foutberichten die kunnen optreden als de primaire beheerde identiteit niet is toegewezen of over de juiste machtigingen beschikt.
BACK-UP naar URL met een beheerde identiteit
Nadat u de referentie hebt gemaakt, kunt u deze gebruiken om een back-up te maken van databases en deze te herstellen naar Azure Blob Storage. Zorg ervoor dat voor de primaire beheerde identiteit voor de SQL Server op Azure VM de Storage Blob Data Contributor
rol is toegewezen aan het opslagaccount.
In het volgende voorbeeld ziet u hoe u een back-up maakt van een database naar Azure Blob Storage met behulp van de referenties voor de beheerde identiteit:
BACKUP DATABASE [AdventureWorks]
TO URL = 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'
RESTORE from URL with a managed identity (HERSTELLEN vanuit URL met een beheerde identiteit
In het volgende voorbeeld ziet u hoe u een database herstelt vanuit Azure Blob-opslag met behulp van de beheerde identiteit referentie.
RESTORE DATABASE [AdventureWorks]
FROM URL = 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'
Foutberichten
traceringsvlag 4675- kan worden gebruikt om referenties te controleren die zijn gemaakt met een beheerde identiteit. Als de CREATE CREDENTIAL
-instructie is uitgevoerd zonder traceringsvlag 4675 ingeschakeld, wordt er geen foutbericht weergegeven als de primaire beheerde identiteit niet is ingesteld voor de server. Als u problemen met dit scenario wilt oplossen, moet de referentie worden verwijderd en opnieuw worden gemaakt zodra de traceringsvlag is ingeschakeld.
Er is geen primaire beheerde identiteit toegewezen
Als een primaire beheerde identiteit niet is toegewezen aan de SQL Server op azure-VM, mislukken de back-up- en herstelbewerkingen met een foutbericht dat aangeeft dat de beheerde identiteit niet is geselecteerd.
Msg 37563, Level 16, State 2, Line 14
The primary managed identity is not selected for this server. Enable the primary managed identity for Microsoft Entra authentication for this server. For more information see (https://aka.ms/sql-server-managed-identity-doc).`
Er is geen Storage Blob Data Contributor
rol toegewezen
Als de primaire beheerde identiteit voor de SQL Server op azure-VM niet de Storage Blob Data Contributor
rol aan het opslagaccount krijgt, mislukt de BACKUP
bewerking met een foutbericht dat aangeeft dat de toegang wordt geweigerd.
Msg 3201, Level 16, State 1, Line 31
Cannot open backup device 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'. Operating system error 5(Access is denied.).
Msg 3013, Level 16, State 1, Line 31
BACKUP DATABASE is terminating abnormally.
Als de beheerde identiteit voor de SQL Server op azure-VM niet de Storage Blob Data Contributor
rol aan het opslagaccount krijgt, mislukt de RESTORE
bewerking met een foutbericht dat aangeeft dat de toegang is geweigerd.
Msg 3201, Level 16, State 1, Line 31
Cannot open backup device 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'. Operating system error 5(Access is denied.).
Msg 3013, Level 16, State 1, Line 31
RESTORE DATABASE is terminating abnormally.
Problemen met netwerk of firewall
Als u geen geldige netwerktoegang tot de Azure Blob-opslag en Windows Firewall-machtigingen op de host hebt geconfigureerd om de uitgaande verbinding toe te staan en geldige service-eindpunten voor het opslagaccount niet zijn geconfigureerd, mislukt de BACKUP
bewerking met een foutbericht dat aangeeft dat de toegang is geweigerd.
Msg 3201, Level 16, State 1, Line 31
Cannot open backup device 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'. Operating system error 5(Access is denied.).
Msg 3013, Level 16, State 1, Line 31
BACKUP DATABASE is terminating abnormally.
Als u geen geldige netwerktoegang tot de Azure Blob-opslag en Windows Firewall-machtigingen op de host hebt geconfigureerd om de uitgaande verbinding toe te staan en geldige service-eindpunten voor het opslagaccount niet zijn geconfigureerd, mislukt de RESTORE
bewerking met een foutbericht dat aangeeft dat de toegang is geweigerd.
Msg 3201, Level 16, State 1, Line 31
Cannot open backup device 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak'. Operating system error 5(Access is denied.).
Msg 3013, Level 16, State 1, Line 31
RESTORE DATABASE is terminating abnormally.
Databasenaam dupliceren
Wanneer de oorspronkelijke database met dezelfde naam in de opslag bestaat, mislukt de back-up van een nieuwe database naar hetzelfde opslagpad met de volgende fout:
Msg 1834, Level 16, State 1, Line 35
RESTORE DATABASE AdventureWorks
FROM URL = 'https://<storage-account-name>.blob.core.windows.net/<container-name>/AdventureWorks.bak';
Msg 1834, Level 16, State 1, Line 35
The file 'C:\Server\sqlservr\data\AdventureWorks.mdf' cannot be overwritten. It is being used by the database 'AdventureWorks'.
Msg 3156, Level 16, State 4, Line 35
File 'AdventureWorks' cannot be restored to 'C:\Server\sqlservr\data\AdventureWorks.mdf'. Use WITH MOVE to identify a valid location for the file.
U kunt dit probleem oplossen door de oorspronkelijke database te verwijderen of de gebruikte bestanden naar een andere locatie te verplaatsen voordat u de database herstelt. Zie Een database herstellen naar een nieuwe locatie (SQL Server) voor meer informatie.
Beperkingen
Beheerde identiteit op serverniveau wordt alleen ondersteund voor SQL Server op azure-VM en niet on-premises SQL Server. Beheerde identiteit op serverniveau wordt niet ondersteund voor Linux.
BACKUP TO URL
ofRESTORE FROM URL
met een beheerde identiteit wordt alleen ondersteund voor SQL Server op Azure VM.BACKUP TO URL
ofRESTORE FROM URL
wordt niet ondersteund door on-premises SQL Server.Beheerde identiteiten worden niet ondersteund met een failovercluster-instantie (FCI).
BACKUP TO URL
kan alleen worden uitgevoerd met dezelfde beheerde identiteit die wordt gebruikt voor de SQL Server op azure-VM, ongeacht of de server een of meer exemplaren van SQL Server op de VIRTUELE machine heeft.