Symptomer
Tenk deg følgende:
-
Du bruker Microsoft SQL Server 2012 eller SQL Server-2014.
-
Du har en database som har service broker er aktivert i den primære replika.
-
Du sikkerhetskopierer databasen i primærserver som har service broker aktivert og gjenopprette det på sekundær server.
-
Som en del av definerer gruppen tilgjengelighet mellom primære og sekundære servere, prøver du å koble databasen til gruppen tilgjengelighet ved hjelp av veiviseren for ny tilgjengelighet gruppe eller kommandoen:
Endre DATABASE < dbname > angi HADR tilgjengelighet GROUP = < agname >
I denne situasjonen logges følgende feil i SQL Server-feilloggen:
{
Feil: 3449, alvorlighetsgrad: 21, tilstand: 1. SQL Server må slå for å gjenopprette en database (database-ID 1). Databasen er en brukerdatabase ikke kan avslutte eller en systemdatabase. Starte SQLServer på nytt. Hvis databasen ikke gjenopprette etter en annen oppstart, reparere eller gjenopprette SQL-spor ble stoppet på grunn av server-avslutning. Sporings-ID = '1'. Dette er en Informasjonsmelding. Ingen brukerhandling er nødvendig. }
Årsak
Dette problemet oppstår fordi Hvis broker aktivert en tjenestedatabase er sikkerhetskopiert og gjenopprettet til den sekundære serveren, brokeren som tjenesten i den gjenopprettede databasen ikke er aktivert. Fortsatt holder en service broker-id internt i databasen.
Når du legger til den gjenopprettede databasen på den sekundære serveren gruppen tilgjengelighet, er brokeren som tjenesten aktivert. Samme GUID i databasen tilgjengelighet oppdages, og følgende feil starter (stille): 9772 "Service Broker i databasen"< dbname >"kan ikke aktiveres fordi det allerede finnes en aktivert Service Broker med samme ID". Dette resulterer i feil 3449 som databasen er deltakelse i tilgjengelighet-gruppen, og fører til SQL-serveren til å avslutte uventet.Oppløsning
Problemet ble først løst i den følgende kumulative oppdateringen av SQL Server.
Samleoppdatering 1 for SQLServer-2014/en-us/help/2931693
Kumulativ oppdatering 9 for SQL Server 2012 SP1/en-us/help/2931078
Hver nye kumulative oppdateringen for SQL Server inneholder alle hurtigreparasjonene og alle sikkerhetsreparasjoner som fulgte med den forrige kumulative oppdateringen. Sjekk ut de nyeste kumulative oppdateringene for SQL Server:
Status
Microsoft har bekreftet at dette er et problem i Microsoft-produktene som er oppført i delen "Gjelder for".