Bejelentkezés Microsoft-fiókkal
Jelentkezzen be, vagy hozzon létre egy fiókot.
Üdvözöljük!
Válasszon másik fiókot.
Több fiókja van
Válassza ki a bejelentkezéshez használni kívánt fiókot.

A Microsoft egyetlen letölthető fájlként terjeszti a Microsoft SQL Server 2005, 2008 és 2008 R2 javításokat. Mivel a javítások kumulatívak, minden új kiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2005-ös, 2008-es és 2008-es R2-javítás kiadásban szereplő összes biztonsági javítást.

Jelenségek

Vegyük például a következő forgatókönyvet:

  • A Microsoft SQL Server 2005, a Microsoft SQL Server 2008 vagy a Microsoft SQL Server 2008 R2 telepítése számítógépen.

  • Egy vagy több adatbázis a teljes vagy tömegesen naplózott helyreállítási modellben található.

  • Az adatbázis tranzakciós naplófájljának kezdeti mérete kicsi. A tranzakciós fájl azonban nagy méretűre nő.

  • A tranzakciós naplófájl automatikus növekedési növekménye kis méretre van konfigurálva. Az automatikus növekedési növekmény például egy megabájtra vagy egy százalékra van konfigurálva. Vagy egy kis manuális növekedéssel növelheti a tranzakciós naplófájlt.

  • A tranzakciós naplófájl a kis növekedéssel növekszik. Egy idő után a tranzakciós naplófájl nagy méretű lesz.

    A tranzakciós naplófájl például száz megabájtról tíz gigabájtra nő. A tranzakciós naplófájl minden növekedésben egy megabájttal növekszik.

Ebben a forgatókönyvben a következő problémákat tapasztalhatja:

  • Az adatbázis helyreállítása lassú az adatbázis elindításakor, ha nagy mennyiségű helyreállítást kell végezni.

    Egy tranzakció például hosszú ideig függőben van. Vagy sok kis méretű tranzakció nem lesz véglegesítve, amikor a SQL Server leáll vagy újraindul. Ebben az esetben az elemzési fázisban, a visszavonási fázisban vagy az ismétlési fázisban hosszú becsült helyreállítási időre vonatkozó hibaüzenet jelenhet meg. A hiba az alábbihoz hasonló, és a SQL Server 2005-ös hibanaplófájlban van naplózva:

    A "mydatabase" adatbázis (7) elemzése 0% kész (körülbelül 1234 másodperc marad). Ez csak tájékoztató üzenet. Nincs szükség felhasználói műveletre.

  • Az adatbázis helyreállítása lassú, ha egy teljes adatbázis-biztonsági mentési fájl és egy további tranzakciónapló-sorozat áll vissza, ha az adatbázis online állapotba kerül.

    Megjegyzés: Ha a visszaállítási művelet során online állapotba szeretné helyezni az adatbázist, használja a WITH RECOVERY szintaxist vagy a WITH STANDBY = <beállításokat> szintaxist.

  • Az adatbázis-tükrözés helyreállítása lassú a társkiszolgálón a tükrözési párban.

  • A tranzakciós replikáció naplóolvasó ügynökének állapota lassú a következő műveletek esetében:

    • A közzétevő adatbázis tranzakciónaplója elemzésre kerül.

    • A rendszer hozzáad egy parancsot egy terjesztési adatbázishoz.

    • A rendszer replikálja a tranzakciókat.

  • Lassú teljesítmény akkor fordul elő, ha adatbázis-pillanatkép jön létre, ha sok tranzakció van naplózva, vagy ha a tranzakciónaplók hosszú ideig aktívak maradnak. Ez a probléma azért fordul elő, mert a pillanatképnek helyreállítást kell futtatnia, és a tranzakciónaplókat vissza kell állítani.

  • Lassú teljesítmény akkor fordul elő, ha a DBCC CHECKDB szintaxissal olyan rejtett adatbázis-pillanatképet hoz létre, amelynek teljes mértékben helyre kell állítania az adatbázis-pillanatképet a konzisztencia-ellenőrzések futtatásához.

A probléma oka

Ezek a problémák azért fordulnak elő, mert a tranzakciós naplófájlokban lévő virtuális naplófájlok (VLF-ek) lassú teljesítményt okozhatnak, amikor SQL Server a következő műveletek során megvizsgálja ezeket a VLF-eket:

  • Adatbázis helyreállítása

  • Adatbázis-tükrözés

  • Adatbázis-pillanatkép

  • Adatbázis tranzakciós replikációs naplóolvasói tevékenységei

Amikor egy adatbázis tranzakciós naplófájlját kis lépésekben növelik a szélsőséges növekedési körülmények között, több ezer vagy több százezer VLF található egyetlen tranzakciónapló-fájlkészletben (.ldf). A nagy méretű naplók nagy növekményekkel történő növekedése azonban összehasonlításból csak több virtuális dll-et hoz létre. Előfordulhat például, hogy több is kevesebb, mint 100 VLF.

Megjegyzés: A VLF-fájlok azok a részlegek vagy szegmensek, amelyeket a tranzakciós naplófájlban SQL Server belsőleg használnak.
 

Megoldás

Kumulatív frissítési információk

SQL Server 2008 R2


A probléma javítását először a 6. kumulatív frissítésben adtuk ki. A SQL Server 2008 R2 kumulatív frissítési csomagjának beszerzésével kapcsolatos további információkért kattintson a következő cikkszámra a Microsoft Tudásbázisban a cikk megtekintéséhez:

2489376 6. kumulatív frissítési csomag SQL Server 2008 R2-höz Megjegyzés Mivel a buildek összegzőek, minden új javítás kiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2008 R2 javítás kiadásában szereplő összes biztonsági javítást. Javasoljuk, hogy fontolja meg a gyorsjavítást tartalmazó legújabb javítás kiadásának alkalmazását. További információ a Microsoft Tudásbázis következő számú cikkében olvasható (a cikk megnyitásához kattintson a sorszámra):

981356 A 2008-SQL Server R2 kiadását követően kiadott SQL Server 2008 R2-buildek

SQL Server 2008 Service Pack 1

A hiba javítása először a 2008-SQL Server 12- es kumulatív frissítésében jelent meg.

Megjegyzés Mivel a buildek kumulatívak, minden új javításkiadás tartalmazza az összes gyorsjavítást és az összes biztonsági javítást, amely a 2008-SQL Server korábbi kiadásában szerepelt. A Microsoft azt javasolja, hogy fontolja meg a gyorsjavítást tartalmazó legújabb javítás kiadásának alkalmazását. További információ a Microsoft Tudásbázis következő számú cikkében olvasható (a cikk megnyitásához kattintson a sorszámra):

970365 A 2008-SQL Server 2008 Service Pack 1 kiadása után kiadott SQL Server 2008-ban kiadott microsoftos SQL Server 2008-hoz készült gyorsjavítások adott SQL Server szervizcsomagokhoz jönnek létre. A SQL Server 2008 Service Pack 1 telepítéséhez SQL Server 2008 Service Pack 1 gyorsjavítást kell alkalmaznia. Alapértelmezés szerint a SQL Server szervizcsomagban megadott gyorsjavítások a következő SQL Server szervizcsomag részét képezik.

SQL Server 2008 Service Pack 2


A hiba javítása először a 2. kumulatív frissítésben jelent meg a SQL Server 2008 Service Pack 2-ben.

Megjegyzés Mivel a buildek kumulatívak, minden új javításkiadás tartalmazza az összes gyorsjavítást és az összes biztonsági javítást, amely a 2008-SQL Server korábbi kiadásában szerepelt. A Microsoft azt javasolja, hogy fontolja meg a gyorsjavítást tartalmazó legújabb javítás kiadásának alkalmazását. További információ a Microsoft Tudásbázis következő számú cikkében olvasható (a cikk megnyitásához kattintson a sorszámra):

2402659 A 2008-SQL Server Service Pack 2 kiadása után kiadott SQL Server 2008-ban kiadott microsoftos SQL Server 2008-hoz készült gyorsjavítások adott SQL Server szervizcsomagokhoz jönnek létre. A SQL Server 2008 Service Pack 2 gyorsjavítást a SQL Server 2008 Service Pack 2 telepítéséhez kell alkalmaznia. Alapértelmezés szerint a SQL Server szervizcsomagban megadott gyorsjavítások a következő SQL Server szervizcsomag részét képezik.

SQL Server 2005 Service Pack 3

A hiba javítása először a 13. kumulatív frissítésben jelent meg a SQL Server 2005 Service Pack 3-hoz.

Megjegyzés Mivel a buildek kumulatívak, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2005-ös javításkiadásban szereplő összes biztonsági javítást. A Microsoft azt javasolja, hogy fontolja meg a gyorsjavítást tartalmazó legújabb javítás kiadásának alkalmazását. További információ a Microsoft Tudásbázis következő számú cikkében olvasható (a cikk megnyitásához kattintson a sorszámra):

960598 A SQL Server 2005 Service Pack 3 kiadása után kiadott SQL Server 2005-ös buildek microsoftos SQL Server 2005-ös gyorsjavítások jönnek létre adott SQL Server szervizcsomagokhoz. A SQL Server 2005 Service Pack 3 telepítéséhez SQL Server 2005 Service Pack 3 gyorsjavítást kell alkalmaznia. Alapértelmezés szerint a SQL Server szervizcsomagban megadott gyorsjavítások a következő SQL Server szervizcsomag részét képezik.
 

SQL Server 2005 Service Pack 4

A hiba javítása először az 1. kumulatív frissítésben jelent meg a SQL Server 2005 Service Pack 4 csomaghoz.

Megjegyzés Mivel a buildek kumulatívak, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2005-ös javításkiadásban szereplő összes biztonsági javítást. A Microsoft azt javasolja, hogy fontolja meg a gyorsjavítást tartalmazó legújabb javítás kiadásának alkalmazását.

A SQL Server 2005 Service Pack 4 telepítéséhez SQL Server 2005 Service Pack 4 gyorsjavítást kell alkalmaznia. Alapértelmezés szerint a SQL Server szervizcsomagban megadott gyorsjavítások a következő SQL Server szervizcsomag részét képezik.

Állapot

A Microsoft megerősítette, hogy ez a probléma „A következőkre vonatkozik:” részben felsorolt Microsoft-termékekre vonatkozik.

Kerülő megoldás

Telepítse ezt a gyorsjavítást, és indítsa újra SQL Server javíthatja a helyreállítási teljesítményt. A gyorsjavítás telepítése és a SQL Server újraindítása után például a következő műveletek teljesítménye javulhat:

  • Adatbázis helyreállítása

  • Adatbázis-tükrözés

  • Adatbázis-pillanatkép

  • Adatbázis tranzakciós replikációs naplóolvasói tevékenységei


Ha nem tudja telepíteni ezt a gyorsjavítást, az alábbi kerülő megoldásokkal elháríthatja a meglévő problémákat, és megakadályozhatja a későbbi előfordulásokat.

Meglévő probléma megoldása

  • Várjon, amíg a visszaállítási vagy helyreállítási művelet befejeződik

    Ha olyan nem helyreállított adatbázissal rendelkezik, amely lassú teljesítményt tapasztal az adatbázis visszaállításakor vagy helyreállításakor, előfordulhat, hogy meg kell várnia a visszaállítási vagy helyreállítási művelet befejezését. Előfordulhat például, hogy egy nem helyreállított adatbázis SQL Server Management Studio (SSMS) kapcsolat nélküli állapotát vagy helyreállítási állapotát látja. A SQL Server leállítása általában nem könnyíti meg a lassú helyreállítást, és több időt vehet igénybe ugyanazon helyreállítási elemzési fázis ismétlése, ismétlése vagy visszavonása.

  • Kerülje a több ezer VLF-et tartalmazó tranzakciónapló-sorozat visszaállítását

    Ha egy adatbázis biztonsági mentési fájllal történő visszaállítása és helyreállítása során lassú teljesítményt tapasztal, elkerülheti a több ezer VLF-et tartalmazó tranzakciónapló-sorozatok visszaállítását. A legtöbb rögzített virtuális naplófájlt tartalmazó biztonsági mentési fájl azonosításához használja az alábbi utasítást a naplók biztonsági mentési fájljainak FirstLSN - és LastLSN-oszlopainak megtekintéséhez:
    RESTORE HEADERONLY FROM DISK='C:\folder\file.trn'

    Dönthet úgy, hogy nem állítja vissza a naplófájlok biztonsági másolatát. Vagy használhatja a STOP AT utasítást a RESTORE parancsokban, hogy elkerülje a tranzakciónaplók erősen töredezett részeit. Ha egy hiba-helyreállítási forgatókönyv során nem állítja vissza teljes mértékben a naplósorozatokat a legutóbbi időpontig, adatvesztés történik az adatbázisban SQL Server. Ez az adatvesztés azért fordul elő, mert nem minden tranzakciót tartanak meg. Ezért van egy üzleti kompromisszumos döntés. Teljes mértékben visszaállíthat egy nagymértékben töredezett tranzakciónaplót. Ez a művelet azonban több órát is igénybe vehet. Vagy használhatja a STOP AT utasítást a helyreállításban a napló erősen töredezett része előtti helyreállítás leállításához. A kihagyott hiányzó tranzakciók azonban elvesznek.

    Megjegyzés A gyorsjavítás telepítése nélkül általában nincs biztonságos megoldás a gyors helyreállításra SQL Server újraindítása után. SQL Server a naplófájlok elemzéséhez, a befejezett tranzakciók újbóli végrehajtásához, majd a befejezetlen tranzakciók visszavonásához meg kell keresnie a VLF-k listáját, hogy biztonságosan online állapotba hozza az adatbázist. A helyreállítás során nem hagyhatja ki biztonságosan a tranzakciókat.

Jövőbeli előfordulás megakadályozása

  • Állítsa be az adatbázis automatikus növekedési növekményét a megfelelő méretre

    Ha az automatikus növekedés mérete túl kicsi, sok virtuális naplófájl (VLF) jelenik meg, és a SQL Server teljesítménye lassú lehet. Ha az automatikus növekedés mérete túl nagy, előfordulhat, hogy a tranzakciónaplókat automatikusan növelő lekérdezéseknek hosszú ideig kell várniuk a növekedés befejezésére. Ezért időtúllépési hiba léphet fel SQL Server. A problémák megkerüléséhez beállíthatja az adatbázis automatikus növekedésének méretét a megfelelő méretre.

  • A VLF-k nagy számának megszüntetése és manuális növekedés

    Ha sok VLF szerepel a tranzakciónaplóban, csökkentse a tranzakciós napló méretét, és manuális növekedéssel növelje a tranzakciós napló méretét a csúcsidőszak előtt, hogy megfeleljen az igényeknek. A tranzakciónapló például nagy növekményben vagy egyetlen manuális növekedésben visszanő ésszerű átlagos méretre. Ezért a tranzakciónapló mérete eléri a maximális kapacitást, és a napló biztonsági mentési fájljait gyakran és rendszeres időközönként ütemezi a rendszer. Emellett előfordulhat, hogy a tranzakciónapló csonkul, és a tranzakciónapló VLF-jei egy ciklusban újra felhasználhatók.

  • A tranzakciónapló manuális

    zsugorítása és növelése A túl sok VLF-et tartalmazó napló kijavításához kövesse az alábbi lépéseket a napló zsugorításához és manuális növeléséhez:

    1. Ha az adatbázis egy teljes vagy tömegesen naplózott helyreállítási modellben található, biztonsági másolatot kell készítenie a tranzakciónaplóról, hogy az aktív VLF-eket csonkíthassa és újra felhasználhassa. BACKUP LOG databasename TO DISK='C:\folder\log_backupfile.trn'
      A tranzakciós naplófájl SSMS használatával történő biztonsági mentéséről a Microsoft Developer Network (MSDN) alábbi webhelyén talál további információt:

      A tranzakciós naplófájl biztonsági mentése az SSMS használatávalA tranzakciós naplófájl Transact-SQL-utasítások használatával történő biztonsági mentésével kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

      A tranzakciós naplófájl biztonsági mentése Transact-SQL-utasítások használatával

    2. A tranzakciós naplófájl logikai nevének meghatározásához futtassa az alábbi utasítások egyikét.
      1
      . utasítás exec sp_helpfile statement 2
      select * from sys.sysfiles A tranzakciós naplófájl kívánt méretre való csökkentéséhez használja a következő kódot: DBCC SHRINKFILE(transactionloglogicalfilename, TRUNCATEONLY)

    3. A tranzakciós naplófájl méretét a megfelelő méretre növelheti. Javasoljuk, hogy hagyja, hogy a tranzakciós naplófájl mérete a normál csúcsméretre nőjön. Ezért az automatikus növekedés el lesz kerülve. A tranzakciónapló méretének beállításához használja az SSMS Adatbázis tulajdonságai lapját, vagy használja a következő ALTER DATABASE szintaxist: MODIFY FILE ( NAME = transactionloglogicalfilenae, SIZE=newtotalsize MB)
      Az SSMS-ben található adatbázisok méretének növelésével kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

      Adatbázis méretének növelése az SSMS-benAz ALTER DATABASE MODIFY FILE szintaxissal kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

      Általános információk az ALTER DATABASE MODIFY FILE szintaxisról

További információ

A VLF-szegmensek számát az SQL-hiba naplófájljának áttekintésével, majd az egyes tranzakciónaplók biztonsági mentési fájljában található naplósorszám (LSN) megkeresésével ellenőrizheti. Az LSN-ben a kettőspont szimbólum előtti első számjegyek az LSN számának felelnek meg.

Az LSN első tájékoztató üzenetében például az első szám 1. Az LSN második tájékoztató üzenetének első száma azonban 100001. Ebben a forgatókönyvben 100 000 VLF van használatban az első tájékoztató üzenet és a második tájékoztató üzenet között. Ezért a naplózott töredezett tranzakciónapló, amely sok virtuális naplófájllal (VLF) rendelkezik, a következőképpen néz ki:
 

{A naplóról biztonsági mentés készült. Adatbázis: mydbname, létrehozás dátuma(ideje): 2010/07/08(12:36:46), első LSN: 1:5068:70, utolsó LSN: 1:5108:1, memóriaképeszközök száma: 1, eszközadatok: (FILE=1, TYPE=DISK: {'C:\folder\logbackup1.trn'}). Ez csak tájékoztató üzenet. Nincs szükség felhasználói műveletre.

A naplóról biztonsági mentés készült. Adatbázis: mydbname, létrehozás dátuma(ideje): 2010/07/08(15:36:46), első LSN: 100001:5108:1, utolsó LSN: 100002:5108:1, memóriaképeszközök száma: 1, eszközadatok: (FILE=2, TYPE=DISK: {'C:\folder\logbackup2.trn'}). Ez csak tájékoztató üzenet. Nincs szükség felhasználói műveletre.}

Az alábbi táblázat további információt nyújt azokról a termékekről vagy eszközökről, amelyek automatikusan ellenőrzik a SQL Server példányának "Tünetek" szakaszában leírt feltételt, valamint azokat a SQL Server verzióit, amelyeken a szabályt kiértékelték.
 

Szabályszoftver

Szabály címe

Szabály leírása

Termékverziók, amelyeken a szabály kiértékelése történik

System Center Advisor

SQL Server tranzakciós replikáció esetén a naplóolvasó ügynök teljesítménye hatással lehet a tranzakciónapló mérete vagy a VLF száma miatt

Ebben a SQL Server példányban az Advisor a jelenléti tranzakciós replikációt észlelte, amely jelentősen nagyobb számú VLF-et vagy TLOG-méretet mutatott. A naplóolvasó ügynök teljesítményét negatívan befolyásolja a tranzakciónapló mérete vagy a VLF száma. Csökkentse a tranzakciónapló méretét és a VLF számát a naplóolvasó ügynök teljesítményének javítása érdekében.

SQL Server 2008

SQL Server 2008 R2

SQL Server 2012



 

Hivatkozások

A tranzakciónapló fizikai architektúrájáról a következő MSDN-webhelyen talál további információt:

A tranzakciónapló

fizikai architektúrájára vonatkozó általános információk A naplósorozatszámokkal (LSN) kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

A naplósorszámokkal

kapcsolatos általános információk Az adatbázis-tükrözés indításakor felmerülő 1413-ra vonatkozó hibáról az MSDN következő webhelyén talál további információt:

Általános információk az adatbázis-tükrözés indításakor

felmerülő 1413-at érintő hibáról Ha többet szeretne megtudni arról, hogy egy naplófájlstruktúra hogyan befolyásolhatja az adatbázis-helyreállítási időt, látogasson el az MSDN következő webhelyére:

Hogyan befolyásolhatja a naplófájlstruktúra az adatbázis helyreállítási idejét

? A tranzakciónapló virtuális fájljaival kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

Általános információk a tranzakciós naplófájlról

Az adatbázis-pillanatképek létrehozásával kapcsolatos további információkért látogasson el az MSDN következő webhelyére:

Adatbázis-pillanatkép létrehozásaA SQL Server növekményes karbantartási modelljéről a microsoftos tudásbázis következő cikkében talál további információt:

935897 Növekményes karbantartási modell érhető el a SQL Server csapatától a jelentett problémák gyorsjavításainak továbbításához. Ha többet szeretne megtudni SQL Server frissítések elnevezési sémájáról, kattintson a következő cikkszámra a cikk microsoftos tudásbázisban való megtekintéséhez:

822499Új elnevezési séma a Microsoft SQL Server szoftverfrissítési csomagokhoz A szoftverfrissítési terminológiával kapcsolatos további információkért kattintson a következő cikkszámra a Cikk a Microsoft Tudásbázisban való megtekintéséhez:

824684 A Microsoft szoftverfrissítéseinek leírására használt szabványos terminológia leírása

További segítségre van szüksége?

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.

A közösségek segítségével kérdéseket tehet fel és válaszolhat meg, visszajelzést adhat, és részletes ismeretekkel rendelkező szakértőktől hallhat.

Hasznos volt ez az információ?

Mennyire elégedett a fordítás minőségével?
Mi volt hatással a felhasználói élményére?
Ha elküldi a visszajelzést, a Microsoft felhasználja azt a termékei és szolgáltatásai továbbfejlesztéséhez. Az informatikai rendszergazda képes lesz ezeket az adatokat összegyűjteni. Adatvédelmi nyilatkozat.

Köszönjük a visszajelzését!

×