Microsoft distribueert Microsoft SQL Server 2008 met Service Pack 3 (SP3) of Microsoft SQL Server 2008 R2 als een bestand dat kan worden gedownload. Aangezien de fixes cumulatief zijn, bevat elke nieuwe versie alle hotfixes en alle beveiligingsupdates die zijn opgenomen in de eerdere versie van SQL Server 2008 SP3 of SQL Server 2008 R2 update.
Symptomen
Neem het volgende scenario:
-
U maakt partities voor een tabel in SQL Server 2008 of in SQL Server 2008 R2.
-
U schakelt compressie niet in op alle partities.
-
U probeert een record in te voegen in een nieuwe lege partitie.
In dit scenario wordt een toegangsfout weergegeven en wordt de volgende fout geregistreerd in het foutenlogboek van SQL Server:
<Date> <Time> spid## ***Stack Dump being sent to C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\LOG\SQLDump0001.txt<Date> <Time> spid## SqlDumpExceptionHandler: Process 66 generated fatal exception c0000005 EXCEPTION_ACCESS_VIOLATION. SQL Server is terminating this process.<Date> <Time> spid## * BEGIN STACK DUMP:<Date> <Time> spid## * Exception Address = 0000000000C37D22 Module(sqlservr+0000000000137D22)<Date> <Time> spid## * Exception Code = c0000005 EXCEPTION_ACCESS_VIOLATION<Date> <Time> spid## * Access Violation occurred reading address 0000000000000020
Opmerking Dit probleem doet zich ook voor in Microsoft SQL Server 2008 R2.
Oplossing
Cumulatieve updategegevens
SQL Server 2008 Service Pack 2
De oplossing voor dit probleem werd voor het eerst uitgebracht in cumulatieve update 8 voor SQL Server 2008 Service Pack 2. Klik voor meer informatie over dit cumulatieve updatepakket op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2648096 Cumulatief updatepakket 8 voor SQL Server 2008 Service Pack 2Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 fix. Microsoft raadt u aan dat u de meest recente reparatie versie met deze hotfix toepast. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2402659 De versies van SQL Server 2008 die na SQL Server 2008 Service Pack 2 zijn uitgebracht Hotfixes voor Microsoft SQL Server 2008 worden gemaakt voor specifieke SQL Server-servicepakketten. U moet een hotfix voor SQL Server 2008 Service Pack 2 toepassen op een installatie van SQL Server 2008 Service Pack 2. Standaard is de hotfix van een SQL Server-servicepakket opgenomen in het volgende SQL Server-servicepakket.
SQL Server 2008 R2
De oplossing voor dit probleem werd voor het eerst uitgebracht in cumulatieve update 11. Voor meer informatie over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2008 R2 klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2633145 Cumulatief update pakket 11 voor SQL Server 2008 R2 Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 R2 correctie. U wordt aangeraden om de meest recente correctie voor deze hotfix toe te passen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
981356 De SQL Server 2008 R2-builds die zijn uitgebracht nadat SQL Server 2008 R2 werd uitgebracht
SQL Server 2008 R2 Service Pack 1
De oplossing voor dit probleem werd voor het eerst uitgebracht in de cumulatieve update 4 voor SQL Server 2008 R2 Service Pack 1. Als u meer informatie wilt over het verkrijgen van dit cumulatieve updatepakket, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2633146 Cumulatief update pakket 4 voor SQL Server 2008 R2 Service Pack 1Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe correctie release alle hotfixes en alle beveiligingsoplossingen die zijn opgenomen in de vorige versie van SQL Server 2008 R2 correctie. U wordt aangeraden om de meest recente correctie voor deze hotfix toe te passen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2567616 De SQL Server 2008 R2-builds die zijn uitgebracht na SQL Server 2008 R2 Service Pack 1 is uitgebracht
SQL Server 2008 Service Pack 3
De oplossing voor dit probleem werd voor het eerst uitgebracht in het cumulatieve updatepakket 2 voor SQL Server 2008 Service Pack 3. Als u meer informatie wilt over het verkrijgen van dit cumulatieve updatepakket voor SQL Server 2008 Service Pack 3, klikt u op het volgende artikelnummer om het artikel in de Microsoft Knowledge Base weer te geven:
2633143 Cumulatief updatepakket 2 voor SQL Server 2008 Service Pack 3Opmerking Aangezien de builds cumulatief zijn, bevat elke nieuwe versie van update alle hotfixes en alle beveiligingsupdates die zijn opgenomen in de vorige versie van SQL Server 2008 Service Pack 3 update. U wordt aangeraden om de meest recente update versie met deze hotfix toe te passen. Klik op het volgende artikelnummer in de Microsoft Knowledge Base voor meer informatie:
2629969 De versies van SQL Server 2008 die na SQL Server 2008 Service Pack 3 zijn uitgebracht
Meer informatie
Ga als volgt te werk om te controleren of dit probleem zich voordoet in dit Knowledge Base-artikel:
-
Open een DAC-verbinding met SQL Server en voer de volgende query uit:
Use <your_db_name>select * from sys.sysrscols rsc where rsc.rsid in ( select sau.container_idfrom sys.system_internals_allocation_units sau join sys.partitions pt on sau.container_id = pt.partition_idand pt.object_id = object_id(<YourPartitionedTable>) and pt.index_id = 1)
Opmerking In deze query is <YourPartitionedTable> een tijdelijke aanduiding voor de naam van de partitietabel.
-
Controleer in de uitvoer van de query of de kolom rscolid een grote waarde bevat. Hieronder ziet u een voorbeeld van een dergelijke grote waarde:
rsid
rscolid
hbcolid
rcmodified
time
Cid
ordkey m
72057594380091392
0
1
614911578
56
0
3
72057594380091392
23:00
dertien
614911578
12967
53265
0
72057594380091392
12
14
614911578
32999
53265
0
72057594380091392
dertien
15
614911578
32999
53265
0
72057594380091392
14
zestien
614911578
59
0
0
72057594380091392
15
19
614911578
59
0
0
72057594380091392
19
Mini
614911578
1834
0
0
72057594380091392
67108865
19
614911578
19627
53625
0
72057594380091392
centimeter
19
614911578
56
0
0
72057594380091392
19
records
614911578
10407
53625
0
72057594380091392
records
25
614911578
662636
0
0
In dit voorbeeld is de waarde van 67108865 aanzienlijk groter dan de andere. Dit geeft aan of u een probleem ondervindt dat in dit Knowledge Base-artikel wordt beschreven.
U kunt dit probleem omzeilen door de betreffende partities opnieuw te maken. Neem contact op met Microsoft ondersteuning voor meer informatie over de partities. U kunt ook alle partities opnieuw maken met behulp van de volgende query:
ALTER INDEX <your_table_index>ON <your_table_name>REBUILD Partition = allGO
Status
Microsoft heeft bevestigd dat dit probleem zich kan voordoen in de Microsoft-producten die worden vermeld in de sectie Van toepassing op.