MSSQL_ENG003165

gäller för:SQL ServerAzure SQL Managed Instance

Meddelandedetaljer

Attribute Value
Produktnamn SQL Server
Händelse-ID 3165
Händelsekälla MSSQLSERVER
Component SQL Server-databasmotor
Symboliskt namn
Meddelandetext Databasen '%ls' återställdes; dock uppstod ett fel medan replikering återställdes/togs bort. Databasen har lämnats offline. Se avsnittet MSSQL_ENG003165 i SQL Server Books Online.

Explanation

Detta fel uppstår om ett problem uppstår vid återställning av en säkerhetskopia av en replikerad databas:

  • Om säkerhetskopian återställs till samma databas och server där den togs, indikerar felet att replikeringsinställningarna inte kunde återställas korrekt.

  • Om säkerhetskopieringen återställs till en annan databas eller server indikerar felet att replikeringsinställningarna inte kunde tas bort korrekt (som standard tas replikeringsinställningarna bort om databasen eller servern är annorlunda).

Felet är troligen resultatet av en mismatch mellan tillståndet för den återställda databasen och en eller flera systemdatabaser som innehåller replikationsmetadata: msdb, master eller distributionsdatabasen.

Användaråtgärd

Så här löser du problemet:

  1. Kör ALTER DATABASE för att ta databasen online; till exempel: ALTER DATABASE AdventureWorks SET ONLINE. Mer information finns i ALTER DATABASE (Transact-SQL). Om du vill bevara replikeringsinställningarna, gå till steg 2. Om inte, gå till steg 3.

  2. Utför sp_restoredbreplication (Transact-SQL). Om denna lagrade procedur körs framgångsrikt är återställningen klar. Om det inte körs framgångsrikt, gå till steg 3.

  3. Kör sp_removedbreplication (Transact-SQL) för att ta bort alla replikeringsinställningar.

    Konfigurera om replikering om det behövs. Om du har skriptat replikationstopologin som rekommenderat, använd skript för att omkonfigurera topologin.