Symptomen
Neem het volgende scenario:
-
U gebruikt Microsoft SQL Server 2008 of SQL Server 2008 R2.
-
U begint een back-up VSS niet onderdeel van een volume dat als host voor SQL Server-bestanden fungeert. U gebruikt bijvoorbeeld Microsoft Azure Site herstelagent.
In dit geval you merkt dat het VSS backup is mislukt vanwege een fout SQLServerWriter, hoewel het foutenlogboek van SQL Server meldt een geslaagde back-up.
SQLServerWriter geeft het volgende resultaat in de "vssadmin list writers" uitvoer:
Writer name: 'SqlServerWriter'
Writer Id: {ID}
Writer Instance Id: {ID}
State: [11] Failed
Last error: Non-retryable error"
Opmerking Het vorige staat of de fout is erg algemeen. Daarom biedt het niet voldoende informatie om een bepaald scenario identificeren. Deze situatie is van belang in de context van back-ups van niet-onderdeel in- of SQL Server 2008 R2.
Bovendien meldt een trace SQLServerWriter het volgende:
[-, 0x00c390:0xbb80:0x0eba42eb]bestandsnaam(LineNumber) sqlwriter.yukon\sqllib\: FrozenDatabase::GetNextPartialInfo: VDI::GetCommand is mislukt met foutcode 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb] EXIT {DatabaseName:: GetNextPartialInfo}: hr: 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb]bestandsnaam(LineNumber) sqlwriter.yukon\sqlwriter\: CSqlWriter::PickupDifferentialInfo: master Database van server-exemplaar CGLONCSQL01 fout bij het inventariseren van bestandsgegevens. HR = 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb]bestandsnaam(LineNumber) sqlwriter.yukon\sqlwriter\: CSqlWriter::PickupDifferentialInfo: activerende HRESULT-code 0x8077000e. Vorige HRESULT-code = 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb] sqlwriter.yukon\sqlwriter\bestandsnaam(LineNumber): CSqlWriter::PickupDifferentialInfo: HRESULT uitzondering CAUGHT: hr: 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb] {CSqlWriter::PickupDifferentialInfo} afsluiten: hr: 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb]bestandsnaam(LineNumber) sqlwriter.yukon\sqlwriter\: STDMETHODCALLTYPE CSqlWriter::OnPostSnapshot: kan geen bestandsgegevens uit de databaseservers afhalen. HR = 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb]bestandsnaam(LineNumber) sqlwriter.yukon\sqlwriter\: STDMETHODCALLTYPE CSqlWriter::OnPostSnapshot: activerende HRESULT-code 0x8077000e. Vorige HRESULT-code = 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb] sqlwriter.yukon\sqlwriter\bestandsnaam(LineNumber): STDMETHODCALLTYPE CSqlWriter::OnPostSnapshot: HRESULT uitzondering CAUGHT: hr: 0x8077000e [-, 0x00c390:0xbb80:0x0eba42eb] Voer {Snapshot:: ~ momentopname}:
Workaround
Er is geen correctie beschikbaar voor SQL Server 2008 of SQL Server 2008 R2.
Tzijn probleem is opgelost in de oorspronkelijke versie (RTM) van SQL Server 2012.Because SQLServerWriter is een gedeeld onderdeel, een upgrade van de gedeelde onderdelen met een hogere primaire versie van SQL Server vervangt SQL Server 2008 of SQL Server 2008 R2-SQLServerWriter met een nieuwere versie met de correctie.
In gevallen waarin SQL Server 2008 of SQL Server 2008 R2 het probleem zich voordoet, is het raadzaam dat u een gratis versie van een recente versie van SQL Server, zoals SQL Server Express Edition installeren. (Zie de sectie 'meer informatie' voor de exacte versie te gebruiken, afhankelijk van de versie van het besturingssysteem). Hiertoe selecteert u Upgrade alleen gedeelde functies op de pagina Selecteer exemplaar van de wizard SQL Server Express installeren.
Deze methode werkt de gedeelde onderdelen naar de SQL Server-versie die wordt gebruikt, betekent dit dat dezelfde SQL Server VSS Writer service die eerder de 2008 of 2008 R2-versie van de schrijver is nu de meest recente versie van SQL Server wordt uitgevoerd van S QL Express. De meest recente versie is achterwaarts compatibel.
Met deze methode kunt u ook SQL Server cumulatieve updates die relevant voor de upgrade-versie van SQL Express zijn installeren. Zo kan u cumulatieve updates voor SQL Server 2014 of 2017 van SQL Server om te SQLServerWriter zo nodig bijgewerkt houden. Zie het volgende Knowledge Base-artikel voor meer informatie:
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.
Meer informatie
-
2016 van SQL Server en SQL Server 2017 Express Edition vereist Windows Server 2012 of hoger of Windows 8 of hoger.
-
Als u Windows Server 2008 of Windows Server 2008 R2 met SQL Server 2008 of SQL Server 2008 R2 gebruikt, kunt u Service Pack 3 (SP3) voor SQL Server 2014 Express Edition gedeelde onderdelen bijwerken:
-
Als u Windows server 2012 of een latere versie met SQL Server 2008 of SQL Server 2008 R2 gebruikt, kunt u SQL Server 2017 Express Edition gedeelde onderdelen bijwerken:
-
Wanneer u de gedeelde componenten bijwerkt, worden de subcomponenten naast SQLServerWriter bijgewerkt. Bijvoorbeeld: Integration Services, Master Data Services (MDS), SQL Server Management Studio (SSMS), SQL Server Data Tools (SSDT) en SQL Server Books Online zijn bijgewerkt.
-
Gedeelde onderdelen bijwerken en om te voorkomen dat het probleem een andere oplossing is een 'dummy' SQL Express-exemplaar van een primaire versie later te installeren. Wanneer u een hoger primaire versie van SQL Server-exemplaar installeert, worden gedeelde onderdelen bijgewerkt. U kunt later uitschakelen of verwijderen van de dummy-instantie. Het zuiverst aanpak is echter de gedeelde onderdelen bijwerken.
Verwijzingen
Meer informatie over de terminologiedie door Microsoft wordt gebruikt om softwareupdates te beschrijven.