KB2432235 – pataisa: didelis atminties kiekis gali atsirasti, kai perkuriate vieną "SQL Server 2008" arba "SQL Server 2008 R2" krūvos lentelės skaidinį

"Microsoft" platina "Microsoft SQL Server 2008" 1 pakeitimų paketo (SP1) pataisymus kaip vieną atsisiunčiamą failą. Kadangi pataisymai yra kumuliacinės, kiekviename naujame leidime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 1 pakeitimų paketo (SP1) pataisų leidimo."Microsoft" platina "Microsoft SQL Server 2008" 1 pakeitimų paketą (SP1) arba "Microsoft SQL Server" 2008 R2 kaip vieną atsisiunčiamą failą. Kadangi pataisymai yra kumuliacinės, kiekviename naujame leidime yra visos karštosios pataisos ir visos saugos pataisos, kurios buvo pridėtos prie ankstesnio SQL serverio 2008 1 pakeitimų paketo (SP1) arba "Microsoft SQL Server 2008 R2" pataisos leidimo.

Simptomai

Apsvarstykite šį scenarijų:

  • Yra krūvos lentelė ir nonclustered indeksas, kuris yra lentelėje krūvos. Krūvos lentelėje yra daug eilučių. Pvz., krūvos lentelėje yra daugiau nei 10 000 000 eilučių.

  • Krūvos lentelė ir nonclustered indeksas suskaidytos naudojant tą pačią skaidinio funkciją.

  • Bandote perkurti vieną krūvos lentelės skaidinį.

Pagal šį scenarijų, "SQL Server" netinkamai sunaudoja daug atminties.Pastaba Ši problema gali kilti, net jei skaidinys yra tuščias.

Priežastis

Ši problema kyla dėl to, kad atliekant veiksmą atkurti operacija rezervuojama atmintis netinkamai. Kai "SQL Server" stato vieną skaidinį, SQL serveris atkuria nonclustered indeksą, o SQL serveris rūšiuoja eilutes iš naujos skaidinio vietos. Tačiau šio rūšiavimo operacijos atmintis netinkamai rezervuota pagal viso krūvos lentelės dydį. Todėl suvartojama daug atminties.Pastaba Efektyvesnė rūšiavimo operacija paremta vieno skaidinio dydžiu.

Sprendimas

Kaupiamojo naujinimo informacija

SQL serverio 2008 R2

Šios problemos taisymas pirmą kartą buvo išleistas 5 kaupiamąjį naujinimą. 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:

2438347 "SQL Server 2008 R2" kaupiamojo naujinimo paketas 5 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 SP1

Š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" 1 pakeitimų paketui (SP1), spustelėkite toliau pateiktą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2413738 "SQL Server 2008" 1 pakeitimų paketo 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 1 pakeitimų paketo (SP1) 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:

970365 SQL serverio 2008 komponavimo versijos, išleistos po "SQL Server 2008" 1 pakeitimų paketo išleidimo

"SQL Server 2008" 2 pakeitimų paketas

Šios problemos pataisa pirmą kartą išleista 2 kaupiamąjį naujinimą, skirtą "SQL Server" 2008 2 pakeitimų paketui. Daugiau informacijos apie šį kaupiamųjų naujinimų paketą rasite spustelėję toliau nurodytą straipsnio numerį ir peržiūrėkite straipsnį "Microsoft" žinių bazėje:

2467239 "SQL Server 2008" 2 pakeitimų paketo kaupiamojo naujinimo paketas 2Pastaba 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ą.

Statusą

"Microsoft" patvirtino, kad tai yra "Microsoft" produktų, išvardytų skyriuje "taikoma", problema.

Daugiau informacijos

Norėdami gauti daugiau informacijos apie tai, kaip naudoti ALTER TABLE Transact-SQL sakinį, apsilankykite šioje "Microsoft" programų kūrėjų tinklo (MSDN) svetainėje:

Kaip naudoti "ALTER TABLE" Transact-SQL sakinį

Reikia daugiau pagalbos?

Tobulinkite savo įgūdžius
Ieškoti mokymo
Pirmiausia gaukite naujų funkcijų
Prisijungti prie "Microsoft Insider"

Ar ši informacija buvo naudinga?

Dėkojame už jūsų atsiliepimus!

Dėkojame už jūsų atsiliepimą! Panašu, kad gali būti naudinga jus sujungti su vienu iš mūsų „Office“ palaikymo agentų.

×