Problemen met databaseback-up van SQL Server oplossen met behulp van Azure Backup
Dit artikel bevat informatie over probleemoplossing voor SQL Server-databases die worden uitgevoerd op virtuele Azure-machines.
Zie Voor meer informatie over het back-upproces en de beperkingen over SQL Server-back-ups in Azure-VM's.
SQL Server-machtigingen
Als u beveiliging wilt configureren voor een SQL Server-database op een virtuele machine, moet u de Extensie AzureBackupWindowsWorkload op die virtuele machine installeren. Als u de fout UserErrorSQLNoSysadminMembership krijgt, betekent dit dat uw SQL Server-exemplaar niet over de vereiste back-upmachtigingen beschikt. Volg de stappen in VM-machtigingen instellen om deze fout op te lossen.
Problemen met detectie en configuratie oplossen
Wanneer het maken en configureren van een Recovery Services-kluis is voltooid, is het detecteren van databases en het configureren van back-ups een proces in twee stappen.
Als tijdens de back-upconfiguratie de SQL-VM en de bijbehorende exemplaren niet zichtbaar zijn in de detectie-DB's in VM's en Back-up configureren (raadpleeg de bovenstaande installatiekopieën) controleert u of:
Stap 1: Detectie-DB's in VM's
- Als de VIRTUELE machine niet wordt vermeld in de lijst met gedetecteerde VM's en ook niet is geregistreerd voor SQL-back-up in een andere kluis, volgt u de stappen voor back-up van Discovery SQL Server.
Stap 2: Back-up configureren
- Als de kluis waarin de SQL-VM is geregistreerd in dezelfde kluis die wordt gebruikt om de databases te beveiligen, volgt u de stappen Back-up configureren.
Als de SQL-VM moet worden geregistreerd in de nieuwe kluis, moet de registratie van de oude kluis ongedaan worden gemaakt. Als u de registratie van een SQL-VM uit de kluis ongedaan maakt, moeten alle beveiligde gegevensbronnen worden gestopt en kunt u de back-upgegevens verwijderen. Het verwijderen van back-ups van gegevens is een destructieve bewerking. Nadat u alle voorzorgsmaatregelen hebt genomen om de registratie van de SQL-VM ongedaan te maken, registreert u dezelfde VM bij een nieuwe kluis en voert u de back-upbewerking opnieuw uit.
Problemen met back-up en herstel oplossen
Soms kunnen er willekeurige fouten optreden in back-up- en herstelbewerkingen of kunnen deze bewerkingen vastlopen. Dit kan het gevolg zijn van antivirusprogramma's op uw VIRTUELE machine. Als best practice raden we de volgende stappen aan:
Sluit de volgende mappen uit van antivirusscans:
C:\Program Files\Azure Workload Backup
C:\WindowsAzure\Logs\Plugins\Microsoft.Azure.RecoveryServices.WorkloadBackup.AzureBackupWindowsWorkload
Vervang
C:\
door de letter van uw SystemDrive.Sluit de volgende drie processen die worden uitgevoerd binnen een VIRTUELE machine uit van antivirusscans:
- IaasWLPluginSvc.exe
- IaaSWorkloadCoordinatorService.exe
- TriggerExtensionJob.exe
SQL biedt ook enkele richtlijnen voor het werken met antivirusprogramma's. Zie dit artikel voor meer informatie.
Defect exemplaar in een VIRTUELE machine met meerdere SQL Server-exemplaren
U kunt alleen herstellen naar een SQL-VM als alle SQL-exemplaren die in de VIRTUELE machine worden uitgevoerd, in orde worden gerapporteerd. Als een of meer exemplaren 'defect' zijn, wordt de VM niet weergegeven als hersteldoel. Dit kan dus een mogelijke reden zijn waarom een VM met meerdere exemplaren mogelijk niet wordt weergegeven in de vervolgkeuzelijst 'server' tijdens de herstelbewerking.
U kunt de 'gereedheid voor back-ups' van alle SQL-exemplaren in de VIRTUELE machine valideren, onder Back-up configureren:
Als u een herstelbewerking wilt activeren voor de sql-exemplaren die in orde zijn, voert u de volgende stappen uit:
Meld u aan bij de SQL-VM en ga naar
C:\Program Files\Azure Workload Backup\bin
.Maak een JSON-bestand met de naam
ExtensionSettingsOverrides.json
(als dit nog niet aanwezig is). Als dit bestand al aanwezig is op de virtuele machine, kunt u het blijven gebruiken.Voeg de volgende inhoud toe in het JSON-bestand en sla het bestand op:
{ "<ExistingKey1>":"<ExistingValue1>", …………………………………………………… , "whitelistedInstancesForInquiry": "FaultyInstance_1,FaultyInstance_2" } Sample content: { "whitelistedInstancesForInquiry": "CRPPA,CRPPB " }
Activeer de bewerking Db's opnieuw detecteren op de betrokken server vanuit Azure Portal (dezelfde locatie waar de gereedheid voor back-ups kan worden weergegeven). De VM wordt weergegeven als doel voor herstelbewerkingen.
Verwijder de vermelding WhitelistedInstancesForInquiry uit het ExtensionSettingsOverrides.json-bestand zodra de herstelbewerking is voltooid.
Foutberichten
Back-uptype niet ondersteund
Ernst | Beschrijving | Mogelijke oorzaken | Aanbevolen actie |
---|---|---|---|
Waarschuwing | Huidige instellingen voor deze database bieden geen ondersteuning voor bepaalde back-uptypen die aanwezig zijn in het bijbehorende beleid. | Wijzig de database-instellingen zodat alle back-uptypen in het beleid worden ondersteund. Of wijzig het huidige beleid zodat alleen de ondersteunde back-uptypen worden opgenomen. Anders worden de niet-ondersteunde back-uptypen overgeslagen tijdens geplande back-up of mislukt de back-uptaak voor back-ups op aanvraag. |
UserErrorSQLPODoesNotSupportBackupType
Foutmelding | Mogelijke oorzaken | Aanbevolen actie |
---|---|---|
Deze SQL-database biedt geen ondersteuning voor het aangevraagde back-uptype. | Treedt op wanneer het herstelmodel van de database het aangevraagde back-uptype niet toestaat. De fout kan zich voordoen in de volgende situaties:
|
Als de logboekback-up mislukt voor de database in het eenvoudige herstelmodel, kunt u een van de volgende opties proberen:
|
OperationCancelledBecauseConflictingOperationRunningUserError
Foutmelding | Mogelijke oorzaken | Aanbevolen actie |
---|---|---|
De bewerking is geannuleerd als een conflicterende bewerking is al uitgevoerd op dezelfde database. | Deze fout kan optreden wanneer de geactiveerde on-demand-taak of de geplande back-uptaak een conflict veroorzaakt met een al uitgevoerde back-upbewerking die wordt geactiveerd door de Azure Backup-extensie in dezelfde database. Hier volgen de scenario's waarin deze foutcode kan worden weergegeven:
|
Nadat de conflicterende bewerking is mislukt, start u de bewerking opnieuw op. |
UserErrorFileManipulationIsNotAllowedDuringBackup
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Bewerkingen voor het bewerken van back-ups van bestanden (zoals ALTER DATABASE ADD FILE) en versleutelingswijzigingen in een database moeten worden geserialiseerd. | Hier volgen de gevallen waarin deze foutcode kan optreden:
|
Schakel het andere back-upproduct uit om het probleem op te lossen. |
UserErrorSQLPODoesNotExist
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
SQL-database bestaat niet. | De database is verwijderd of de naam ervan is gewijzigd. | Controleer of de database per ongeluk is verwijderd of de naam ervan is gewijzigd. Als de database per ongeluk is verwijderd, herstelt u de database op de oorspronkelijke locatie om door te gaan met back-ups. Als u de database hebt verwijderd en geen toekomstige back-ups nodig hebt, selecteert u in de Recovery Services-kluis back-up stoppen met Back-upgegevens behouden of Back-upgegevens verwijderen. Zie Back-ups van SQL Server-databases beheren en bewaken voor meer informatie. |
UserErrorSQLLSNValidationFailure
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Logboekketen is onderbroken. | Er wordt een back-up gemaakt van de database of de VIRTUELE machine via een andere back-upoplossing, waardoor de logboekketen wordt afgekapt. |
|
UserErrorOpeningSQLConnection
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Azure Backup kan geen verbinding maken met het SQL-exemplaar. | Azure Backup kan geen verbinding maken met het SQL Server-exemplaar. | Gebruik de aanvullende informatie in het foutenmenu van Azure Portal om de hoofdoorzaken te beperken. Raadpleeg het oplossen van problemen met SQL-back-ups om de fout op te lossen.
|
UserErrorParentFullBackupMissing
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Eerste volledige back-up ontbreekt voor deze gegevensbron. | Er ontbreekt een volledige back-up voor de database. Logboek- en differentiële back-ups zijn ouders van een volledige back-up, dus zorg ervoor dat u volledige back-ups neemt voordat u differentiële of logboekback-ups activeert. | Een volledige back-up op aanvraag activeren. |
UserErrorBackupFailedAsTransactionLogIsFull
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Kan geen back-up maken als transactielogboek voor de gegevensbron vol is. | De transactionele logboekruimte van de database is vol. | Raadpleeg de DOCUMENTATIE van SQL Server om dit probleem op te lossen. |
UserErrorCannotRestoreExistingDBWithoutForceOverwrite
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Database met dezelfde naam bestaat al op de doellocatie | Het doelhersteldoel heeft al een database met dezelfde naam. |
|
UserErrorRestoreFailedDatabaseCannotBeOfflined
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Herstellen is mislukt, omdat de database niet offline kan worden gezet. | Terwijl u een herstelbewerking uitvoert, moet de doeldatabase offline worden gebracht. Azure Backup kan deze gegevens niet offline brengen. | Gebruik de aanvullende informatie in het foutenmenu van Azure Portal om de hoofdoorzaken te beperken. Raadpleeg de SQL Server-documentatie voor meer informatie. |
WlExtGenericIOFaultUserError
Foutbericht | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Er is een invoer-/uitvoerfout opgetreden tijdens de bewerking. Controleer op de veelvoorkomende IO-fouten op de virtuele machine. | Toegangsmachtigingen of ruimtebeperkingen voor het doel. | Controleer op de veelvoorkomende IO-fouten op de virtuele machine. Zorg ervoor dat het doelstation/de netwerkshare op de computer: Zie Herstellen als bestanden voor meer informatie. |
UserErrorCannotFindServerCertificateWithThumbprint
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Kan het servercertificaat met vingerafdruk niet vinden op het doel. | De hoofddatabase op het doelexemplaren heeft geen geldige versleutelingsvingerafdruk. | Importeer de geldige vingerafdruk van het certificaat dat wordt gebruikt op het bronexemplaren naar het doelexemplaren. |
UserErrorRestoreNotPossibleBecauseLogBackupContainsBulkLoggedChanges
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De logboekback-up die is gebruikt voor herstel bevat bulksgewijs geregistreerde wijzigingen. Het kan niet worden gebruikt om te stoppen op een willekeurig tijdstip volgens de SQL-richtlijnen. | Wanneer een database zich in de bulksgewijs vastgelegde herstelmodus bevindt, kunnen de gegevens tussen een bulksgewijs geregistreerde transactie en de volgende logboektransactie niet worden hersteld. | Kies een ander tijdstip voor herstel. Meer informatie. |
FabricSvcBackupPreferenceCheckFailedUserError
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Er kan niet worden voldaan aan de voorkeur van Backup voor de SQL AlwaysOn-beschikbaarheidsgroep omdat bepaalde knooppunten van de beschikbaarheidsgroep niet zijn geregistreerd. | Knooppunten die nodig zijn om back-ups uit te voeren, worden niet geregistreerd of zijn niet bereikbaar. |
|
VMNotInRunningStateUserError
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
SQL Server-VM is afgesloten en is niet toegankelijk voor de Azure Backup-service. | De VIRTUELE machine wordt afgesloten. | Zorg ervoor dat het SQL Server-exemplaar wordt uitgevoerd. |
GuestAgentStatusUnavailableUserError
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
Azure Backup-service maakt gebruik van azure VM-gastagent voor het maken van back-ups, maar gastagent is niet beschikbaar op de doelserver. | De gastagent is niet ingeschakeld of is niet in orde. | Installeer de VM-gastagent handmatig. |
AutoProtectionCancelledOrNotValid
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De intentie voor automatische beveiliging is verwijderd of is niet meer geldig. | Wanneer u automatische beveiliging inschakelt op een SQL Server-exemplaar, configureert u back-uptaken die worden uitgevoerd voor alle databases in dat exemplaar. Als u automatische beveiliging uitschakelt terwijl de taken worden uitgevoerd, worden de taken in uitvoering geannuleerd met deze foutcode. | Schakel automatische beveiliging opnieuw in om alle resterende databases te beveiligen. |
CloudDosAbsoluteLimitReached
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De bewerking wordt geblokkeerd omdat u de limiet hebt bereikt voor het aantal bewerkingen dat binnen 24 uur is toegestaan. | Wanneer u de maximaal toegestane limiet voor een bewerking in een periode van 24 uur hebt bereikt, wordt deze fout weergegeven. Bijvoorbeeld: Als u de limiet hebt bereikt voor het aantal geconfigureerde back-uptaken dat per dag kan worden geactiveerd en u probeert een back-up te configureren voor een nieuw item, wordt deze fout weergegeven. |
Normaal gesproken wordt dit probleem opgelost door de bewerking na 24 uur opnieuw uit te voeren. Als het probleem zich blijft voordoen, kunt u echter contact opnemen met Microsoft Ondersteuning voor hulp. |
CloudDosAbsoluteLimitReachedWithRetry
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De bewerking wordt geblokkeerd omdat de kluis de maximale limiet heeft bereikt voor dergelijke bewerkingen die binnen 24 uur zijn toegestaan. | Wanneer u de maximaal toegestane limiet voor een bewerking in een periode van 24 uur hebt bereikt, wordt deze fout weergegeven. Deze fout wordt meestal weergegeven wanneer er bewerkingen op schaal zijn, zoals beleid wijzigen of automatische beveiliging. In tegenstelling tot het geval van CloudDosAbsoluteLimitReached, is er niet veel dat u kunt doen om deze status op te lossen. In feite voert de Azure Backup-service de bewerkingen intern opnieuw uit voor alle betreffende items. Bijvoorbeeld: Als u een groot aantal gegevensbronnen hebt beveiligd met een beleid en u dat beleid probeert te wijzigen, worden beveiligingstaken voor elk van de beveiligde items geactiveerd en kan dit soms de maximumlimiet bereiken die voor dergelijke bewerkingen per dag is toegestaan. |
De Azure Backup-service voert deze bewerking na 24 uur automatisch opnieuw uit. |
WorkloadExtensionNotReachable
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De bewerking azureBackup-workloadextensie is mislukt. | De VIRTUELE machine is afgesloten of de VM kan geen contact opnemen met de Azure Backup-service vanwege problemen met de internetverbinding. |
UserErrorVMInternetConnectivityIssue
Foutmelding | Mogelijke oorzaken | Aanbevolen acties |
---|---|---|
De VM kan geen contact opnemen met de Azure Backup-service vanwege problemen met de internetverbinding. | Oorzaak 1: De VIRTUELE machine heeft uitgaande connectiviteit nodig met Azure Backup-service, Azure Storage of Microsoft Entra-services. Oorzaak 2: een groepsbeleidsobjectbeleid (GPO) beperkt de vereiste coderingssuites voor TLS-communicatie. |
Aanbeveling voor oorzaak 1: Aanbeveling voor oorzaak 2: Verwijder de VIRTUELE machine uit het groepsbeleidsobject of schakel het groepsbeleidsbeleid uit of verwijder het GPO-beleid als tijdelijke oplossing. U kunt ook het groepsbeleidsobject zodanig wijzigen dat het de vereiste coderingssuites toestaat. |
UserErrorOperationNotAllowedDatabaseMirroringEnabled
Foutmelding | Mogelijke oorzaak | Aanbevolen actie |
---|---|---|
Het maken van een back-up van databases die deelnemen aan een databasespiegelingssessie wordt niet ondersteund door AzureWorkloadBackup. | Wanneer u de spiegelingsbewerking voor een SQL-database inschakelt, wordt deze fout weergegeven. Momenteel biedt Azure Backup geen ondersteuning voor databases waarvoor deze functie is ingeschakeld. | U kunt de databasespiegelingssessie van de database verwijderen om de bewerking te voltooien. Als de database al is beveiligd, kunt u ook de back-upbewerking op de database stoppen. |
UserErrorWindowsWLExtFailedToStartPluginService
Foutmelding | Mogelijke oorzaak | Aanbeveling |
---|---|---|
Bewerking mislukt met UserErrorWindowsWLExtFailedToStartPluginService fout. |
De Azure Backup-workloadextensie kan de invoegtoepassingsservice voor de back-up van de workload niet starten op de virtuele Azure-machine vanwege een onjuiste configuratie van het serviceaccount. | Stap 1: Controleer of de gebruiker NT Service\AzureWLBackupPluginSvc leesmachtigingen heeft voor: - C:\windows\Microsoft.NET \assembly\GAC_32 - C:\windows\Microsoft.NET \assembly\GAC_64 - C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config. Als de machtigingen ontbreken, wijst u leesmachtigingen toe aan deze mappen. Stap 2: Controleer of de NT-service\AzureWLBackupPluginSvc de controlerechten bypass heeft door naar de controle van de machtigingen voor het omzeilen van de gebruikersrechten> voor lokaal beveiligingsbeleid>te gaan. Iedereen moet standaard worden geselecteerd. Als iedereen en NT Service\AzureWLBackupPluginSvc ontbreken, voegt u NT Service\AzureWLBackupPluginSvc-gebruiker toe en start u de service opnieuw of activeert u een back-up- of herstelbewerking voor een gegevensbron. |
Fouten bij opnieuw registreren
Controleer op een of meer van de volgende symptomen voordat u de herregisterbewerking activeert:
Alle bewerkingen (zoals back-up, herstel en configuratie van back-up) mislukken op de VM met een van de volgende foutcodes: WorkloadExtensionNotReachable, UserErrorWorkloadExtensionNotInstalled, WorkloadExtensionNotPresent, WorkloadExtensionDidntDequeueMsg.
Als het gebied Back-upstatus voor het back-upitem Niet bereikbaar wordt weergegeven, sluit u alle andere oorzaken uit die mogelijk dezelfde status hebben:
- Gebrek aan machtigingen voor het uitvoeren van back-upbewerkingen op de VIRTUELE machine.
- Afsluiten van de VIRTUELE machine, zodat er geen back-ups kunnen worden uitgevoerd.
- Netwerkproblemen
In het geval van een AlwaysOn-beschikbaarheidsgroep mislukken de back-ups nadat u de back-upvoorkeur of na een failover hebt gewijzigd.
Deze symptomen kunnen zich voordoen om een of meer van de volgende redenen:
- Er is een extensie verwijderd of verwijderd uit de portal.
- Er is een extensie verwijderd uit Configuratiescherm op de virtuele machine onder Een programma verwijderen of wijzigen.
- De VIRTUELE machine is terug in de tijd hersteld via in-place schijfherstel.
- De VM is gedurende een langere periode afgesloten, dus de extensieconfiguratie is verlopen.
- De virtuele machine is verwijderd en er is een andere virtuele machine gemaakt met dezelfde naam en in dezelfde resourcegroep als de verwijderde VM.
- Een van de knooppunten van de beschikbaarheidsgroep heeft de volledige back-upconfiguratie niet ontvangen. Dit kan gebeuren wanneer de beschikbaarheidsgroep is geregistreerd bij de kluis of wanneer er een nieuw knooppunt wordt toegevoegd.
In de voorgaande scenario's raden we u aan om een herregisterbewerking op de VIRTUELE machine te activeren. Zie hier voor instructies over het uitvoeren van deze taak in PowerShell.
Groottelimiet voor bestanden
De totale tekenreeksgrootte van bestanden is niet alleen afhankelijk van het aantal bestanden, maar ook van hun namen en paden. Haal voor elk databasebestand de logische bestandsnaam en het fysieke pad op. U kunt deze SQL-query gebruiken:
SELECT mf.name AS LogicalName, Physical_Name AS Location FROM sys.master_files mf
INNER JOIN sys.databases db ON db.database_id = mf.database_id
WHERE db.name = N'<Database Name>'"
Rangschik ze nu in de volgende indeling:
[{"path":"<Location>","logicalName":"<LogicalName>","isDir":false},{"path":"<Location>","logicalName":"<LogicalName>","isDir":false}]}
Hier volgt een voorbeeld:
[{"path":"F:\\Data\\TestDB12.mdf","logicalName":"TestDB12","isDir":false},{"path":"F:\\Log\\TestDB12_log.ldf","logicalName":"TestDB12_log","isDir":false}]}
Als de tekenreeksgrootte van de inhoud groter is dan 20.000 bytes, worden de databasebestanden anders opgeslagen. Tijdens het herstel kunt u het pad naar het doelbestand niet instellen voor herstel. De bestanden worden hersteld naar het standaard SQL-pad dat wordt geleverd door SQL Server.
Het standaardpad naar het herstelbestand van het doel overschrijven
U kunt het pad naar het doelherstelbestand tijdens de herstelbewerking overschrijven door een JSON-bestand te plaatsen dat de toewijzing van het databasebestand aan het doelherstelpad bevat. Maak een database_name.json
bestand en plaats het op de locatie C:\Program Files\Azure Workload Backup\bin\plugins\SQL*
.
De inhoud van het bestand moet de volgende indeling hebben:
[
{
"Path": "<Restore_Path>",
"LogicalName": "<LogicalName>",
"IsDir": "false"
},
{
"Path": "<Restore_Path>",
"LogicalName": "LogicalName",
"IsDir": "false"
},
]
Hier volgt een voorbeeld:
[
{
"Path": "F:\\Data\\testdb2_1546408741449456.mdf",
"LogicalName": "testdb7",
"IsDir": "false"
},
{
"Path": "F:\\Log\\testdb2_log_1546408741449456.ldf",
"LogicalName": "testdb7_log",
"IsDir": "false"
},
]
In de voorgaande inhoud kunt u de logische naam van het databasebestand ophalen met behulp van de volgende SQL-query:
SELECT mf.name AS LogicalName FROM sys.master_files mf
INNER JOIN sys.databases db ON db.database_id = mf.database_id
WHERE db.name = N'<Database Name>'"
Dit bestand moet worden geplaatst voordat u de herstelbewerking activeert.
Volgende stappen
Voor meer informatie over Azure Backup voor SQL-VM's.