Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Dit artikel helpt u bij het oplossen van het probleem dat optreedt wanneer u een BULK INSERT of BCP meer bewerkingen probeert uit te voeren.
Oorspronkelijke productversie: SQL Server 2008 R2 Enterprise, SQL Server 2008 Enterprise
Oorspronkelijk KB-nummer: 2700641
Symptomen
Houd rekening met het volgende scenario:
Server A en Server B voeren Microsoft SQL Server 2008 of SQL Server 2008 R2 uit.
U stelt databasespiegeling in tussen Server A en Server B.
U voert een
BULK INSERTofBCPinstructie uit op de principal-database.Opmerking
De optie is standaard
CHECK_CONSTRAINTSingesteld op uit wanneer u eenBULK INSERTofBCPmeer instructies uitvoert.De databasespiegeling is verbroken en de databasespiegelingssessie voert de status SUSPENDED in.
In dit scenario vindt een assertie plaats op de mirrorserver. Daarom wordt er een minidumpbestand gemaakt in de sql Server-logboekmap. Daarnaast ziet u de volgende fout in het SQL Server-foutenlogboek op de mirror-server:
Opmerking
U moet databasespiegeling opnieuw initialiseren om dit probleem op te lossen.
Oorzaak
Dit probleem treedt op omdat de compatibiliteitsgegevens voor vergrendelingen in het transactielogboek van de principal-database niet worden overgedragen naar de mirrorserver.
Tijdelijke maatregel
Als u dit probleem wilt omzeilen, voert u de BULK INSERT or-instructie BCP uit op de principal-database met behulp van de CHECK_CONSTRAINTS optie.
Opmerking
De CHECK_CONSTRAINTS optie zorgt voor tragere prestaties. De vergrendelingsstatus op de mirrorserver vindt echter niet plaats.
Meer informatie
Tijdens een BULK INSERT of BCP bewerking schakelt een onderliggende transactie de CHECK_CONSTRAINTS optie uit. Deze onderliggende transactie maakt gebruik van een vergrendeling die compatibel is met de bovenliggende transactievergrendelingen. De compatibiliteitsgegevens worden opgeslagen in het transactielogboek van de principal-database. De aanvraag voor het vergrendelen van onderliggende transacties wordt daarom verleend in de principal-database.
Deze compatibiliteitsgegevens worden echter niet overgebracht naar de mirrorserver. De aanvraag voor het vergrendelen van onderliggende transacties is daarom niet compatibel met de bovenliggende transactievergrendelingen op de mirror-server. Dit scenario veroorzaakt de assertie op de mirror-server.