"Microsoft" platina "Microsoft SQL Server" 2008 3 pakeitimų paketą (SP3) arba "Microsoft SQL Server" 2008 R2 išsprendžia kaip vieną atsisiunčiamą failą. Kadangi pataisos yra kumuliacinės, kiekvienoje naujoje versijoje yra visos karštosios pataisos ir visi saugos naujinimai, kurie buvo įtraukti į ankstesnį SQL serverio 2008 SP3 arba SQL serverio 2008 R2 naujinimo leidimą.
Simptomai
Apsvarstykite šį scenarijų:
-
Kuriate skaidinius, skirtus lentelei "SQL Server" 2008 arba "SQL Server 2008 R2".
-
Neįjungėte suglaudinimo visuose skaidiniuose.
-
Bandote įterpti įrašą į naują tuščią skaidinį.
Pagal šį scenarijų įvyksta prieigos pažeidimas ir užregistruojamas klaidos pranešimas "SQL Server" klaidų žurnale:
<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
Pastaba Ši problema taip pat kyla naudojant "Microsoft SQL Server" 2008 R2.
Sprendimas
Kaupiamojo naujinimo informacija
"SQL Server 2008" 2 pakeitimų paketas
Ši problema buvo pirmą kartą išleista Kaupiamasis naujinimas 8 SQL serverio 2008 Service Pack 2. Daugiau informacijos apie šį kaupiamųjų naujinimų paketą rasite spustelėję toliau nurodytą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2648096 "SQL Server 2008" 2 pakeitimų paketo kaupiamojo naujinimo paketas 8Pastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 pataisų leidimo. "Microsoft" rekomenduoja apsvarstyti naujausių pataisų leidimų, kuriuose yra šios karštosios pataisos, taikymą. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2402659 SQL serverio 2008 komponavimo versijos, išleistos po "SQL Server 2008" 2 pakeitimų paketo išleidimo "Microsoft SQL Server" 2008 karštosios pataisos kuriamos konkretiems "SQL Server" pakeitimų paketams. Norėdami įdiegti "SQL Server 2008" 2 pakeitimų paketą, turite įdiegti "SQL Server 2008" 2 pakeitimų paketo karštąją pataisą. Pagal numatytuosius "SQL Server" pakeitimų pakete pateiktas karštąsias pataisas yra įtraukta į kitą "SQL Server" pakeitimų paketą.
SQL serverio 2008 R2
Šios problemos taisymas pirmą kartą buvo išleistas Kaupiamasis naujinimas 11. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamojo naujinimo paketą, skirtą "SQL Server" 2008 R2, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2633145 "SQL Server 2008 R2" kaupiamojo naujinimo paketas 11 Pastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 R2 pataisų leidimo. Rekomenduojame apsvarstyti, kaip taikyti naujausią pataisų leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
981356 SQL serverio 2008 R2 stato, buvo paleistas po to, kai buvo išleistas SQL Server 2008 R2
"SQL Server 2008 R2" 1 pakeitimų paketas
Ši problema buvo pirmą kartą išleista Kaupiamasis naujinimas 4 SQL serverio 2008 R2 Service Pack 1. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamąjį naujinimų paketą, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2633146 Kaupiamojo naujinimo paketas 4, skirtas "SQL Server 2008 R2" 1 pakeitimų paketuiPastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja pataisų versija yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 R2 pataisų leidimo. Rekomenduojame apsvarstyti, kaip taikyti naujausią pataisų leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2567616 SQL serverio 2008 R2 stato, buvo paleistas po to, kai buvo išleistas "SQL Server 2008 R2" 1 pakeitimų paketas
"SQL Server 2008" 3 pakeitimų paketas
Šios problemos taisymas pirmą kartą buvo išleistas "SQL Server 2008" 3 pakeitimų paketo kaupiamojo naujinimo pakete 2. Jei norite gauti daugiau informacijos apie tai, kaip gauti šį kaupiamojo naujinimo paketą, skirtą "SQL Server" 2008 3 pakeitimų paketui, spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2633143 Kaupiamojo naujinimo paketas 2 SQL serverio 2008 3 pakeitimų paketuiPastaba Kadangi komponavimo versijos yra kumuliacinės, kiekviena nauja naujinimo versija apima visas karštąsias pataisas ir visus saugos naujinimus, įtrauktus į ankstesnį SQL serverio 2008 3 pakeitimų paketo naujinimo leidimą. Rekomenduojame apsvarstyti, kaip taikyti naujausią naujinimo leidimą, kuriame yra šios karštosios pataisos. Jei reikia daugiau informacijos, spustelėkite toliau esantį straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:
2629969 SQL serverio 2008 komponavimo versijos, išleistos po "SQL Server 2008" 3 pakeitimų paketo išleidimo
Daugiau informacijos
Norėdami patikrinti, ar susiduriate su problema, aprašyta šiame žinių bazės straipsnyje, atlikite šiuos veiksmus:
-
Atidarykite DAC jungtį su SQL serveriu ir vykdykite šią užklausą:
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)
Pastaba Šioje užklausoje <Yourparticionedtable> yra vietos rezervavimo ženklas, skirtas jūsų skaidinio lentelės pavadinimui.
-
Užklausos išvestyje patikrinkite, ar " rscolid " stulpelyje yra didžiulė reikšmė. Toliau pateiktas tokios Didžiosios reikšmės pavyzdys:
rsid
rscolid
hbcolid
rcmodified
ti
Cid
Jurgita Mikiene
72057594380091392
0
1
614911578
56
0
4
72057594380091392
11
13
614911578
12967
53265
0
72057594380091392
12
14
614911578
32999
53265
0
72057594380091392
13
15
614911578
32999
53265
0
72057594380091392
14
16
614911578
59
0
0
72057594380091392
15
17
614911578
59
0
0
72057594380091392
17
18
614911578
1834
0
0
72057594380091392
67108865
19
614911578
19627
53625
0
72057594380091392
22
23
614911578
56
0
0
72057594380091392
23
24
614911578
10407
53625
0
72057594380091392
24
25
614911578
662636
0
0
Šiame pavyzdyje 67108865 reikšmė yra gerokai didesnė nei kitų. Tai reiškia, kad susiduriate su problema, aprašyta šiame žinių bazės straipsnyje.
Norėdami išspręsti šią problemą, atkurkite paveiktus skaidinius. Kreipkitės į "Microsoft" palaikymo tarnybą ir Sužinokite, kokios pertvaros yra įtrauktos. Arba galite atkurti visus skaidinius naudodami šią užklausą:
ALTER INDEX <your_table_index>ON <your_table_name>REBUILD Partition = allGO
Statusą
"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.