Configuration Manager 2012 replikációs problémák kezelése

 

Több helyen elojött a közelmúltban, hogy System Center Configuration Manager 2012 SP1-re való frissítése után SQL Server Service Broker replikációs hibák léptek fel. A Configuration Manager konzolban a Monitoring workspace alatt a Data Replication “Link Failed” státuszt mutatott a replikációs útvonalaknál, és a link kiválasztása után az útvonalhoz tartozó Replication Group-ok “Failed” Initialization Status-t mutattak.

Bizonyos esetekben ez betudható volt annak, hogy az adatbázist tartalmazó köteten ideiglenesen elfogyott a tárhely.

Mielott az alábbi, replikációt helyreállító lépéseket éles rendszeren végrehajtjuk, legyen aktuális Configuration Manager Site mentésünk, vagy legalább egy biztonsági mentés a site adatbázisról. Javasolt a Microsoft Terméktámogatást felkeresni az ilyen jellegu problémákkal, mivel elképzelheto, hogy a hiba, bár hasonló jeleket mutat, de mégis más eredetu.

A problémás Replication Group-ok újrainicializálásához nyissunk eloször egy új lekérdezo ablakot (Query window) SQL Server Management Studio-ban, majd futtassuk le az alábbi lekérdezést:

update RCM_DrsInitializationTracking set InitializationStatus = 7 where ReplicationGroup = '<Failing Replication Group name>' and SiteRequesting = '<Site code for requesting site>' and SiteFulfilling = '<Site code for fulfilling site>'

Ha tehát például a Collection_Membership Replication Group-unk nem tud inicializálódni, az alábbi lekérdezéssel tudjuk ezt kikényszeríteni a CAS site-unkon (C01) az alárendelt primary site felol (P01):

update RCM_DrsInitializationTracking set InitializationStatus = 7 where ReplicationGroup = 'Collection_Membership' and SiteRequesting = 'C01' and SiteFulfilling = 'P01'

Hasonlóképpen járjunk el az összes többi problémás

Replication Group-nál is.

Elofordulhat, hogy a fenti lépések után továbbra is hasonló bejegyzéseket találunk az RCMCtrl.log-ban (részletes logolás esetén):

 

CSqlBCP::BCPIN: bcp_exec failed. SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

*** DRS_Init_BCPIN() failed SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

*** BCP fails due to internal sql error. Check if this table has a trigger failed to execute. SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

CBulkInsert::DRS_Init_BCPIN : Failed to BCP in SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

BCP in result is 2147500037. SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

ERROR: Failed to BCP in for table CI_CurrentComplianceStatus with error code 2147500037. SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

ERROR: Failed to apply BCP for all articles in publication General_Site_Data. SMS_REPLICATION_CONFIGURATION_MONITOR 1/1/1601 12:00:00 AM 2400 (0x0960)

Ebben az esetben kapcsoljunk ki minden triggert az érintett adatbázis táblán (a fenti példánkban ez CI_CurrentComplianceStatus), majd ezután kényszerítsük ki megint az inicializálást.

Miután a Replication Group sikeresen inicializálódott, ne felejtsük el a kikapcsolt triggereket visszakapcsolni. (Vigyázat, nem mindegyik trigger van alapból bekapcsolva a táblákon!)