A Microsoft egy letölthető fájlban terjeszti a Microsoft SQL Server 2008 R2 Service Pack 1 (SP1) vagy a Microsoft SQL Server 2008 vagy a Microsoft SQL Server 2012 javításait. Mivel a javítások összegzőek, minden új kiadás tartalmazza az összes gyorsjavítást és az összes biztonsági frissítést, amelyet az előző SQL Server 2008 R2 Service Pack 1 (SP1) vagy SQL Server 2008 vagy a Microsoft SQL Server 2012 frissítési kiadása tartalmazott.
Jelenségek
Hosszú időt vehet igénybe egy adatbázis visszaállítása a Microsoft SQL Server 2008 R2-ben, a Microsoft SQL Server 2008-ban vagy a Microsoft SQL Server 2012-ben.
A probléma oka
Ez a probléma azért fordul elő, mert hosszú időt vesz igénybe a virtuális naplófájlok (VLF) listájának létrehozása, ha az adatbázisban sok VLF található.
Megoldás
Kumulatív frissítési információk
SQL Server 2012
A hiba javítását először a 2012-es SQL Server 1. kumulatív frissítésében adtuk ki. A kumulatív frissítési csomagról a microsoftos tudásbázis következő cikkszámára kattintva olvashat bővebben:
2679368 1. összegző frissítési csomag a SQL Server 2012-hözMegjegyzés Mivel a buildek összegzőek, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2012-es javítás kiadásában 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):
2692828 A 2012 SQL Server megjelenése után kiadott SQL Server 2012-ben kiadott buildek: A 2012-SQL Server telepítésekor SQL Server 2012 gyorsjavítást kell alkalmaznia.
SQL Server 2008 Service Pack 2
A hiba javítását először a 8. kumulatív frissítésben adták ki a SQL Server 2008 Service Pack 2-höz. A kumulatív frissítési csomagról a microsoftos tudásbázis következő cikkszámára kattintva olvashat bővebben:
2648096 8. összegző frissítési csomag SQL Server 2008 Service Pack 2Note Mivel a buildek kumulatívak, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2008-es javítás kiadásában 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):
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 készültek. A SQL Server 2008 Service Pack 2 telepítéséhez SQL Server 2008 Service Pack 2 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 3
A probléma javítását először a 3. kumulatív frissítésben adták ki a 2008.SQL Server 3. szervizcsomaghoz. A kumulatív frissítési csomagról a microsoftos tudásbázis következő cikkszámára kattintva olvashat bővebben:
2648098 3. összegző frissítési csomag SQL Server 2008 Service Pack 3Note Mivel a buildek összegzőek, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2008-es javítás kiadásában 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):
2629969 A 2008-SQL Server Service Pack 3 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 lettek létrehozva. A SQL Server 2008 Service Pack 3 telepítéséhez SQL Server 2008 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.
11- es kumulatív frissítési csomag a 2008 R2 SQL Server-hez
A probléma javítását először a 11. kumulatív frissítésben adtuk ki. A SQL Server 2008 R2 kumulatív frissítési csomagjának beszerzéséről a Microsoft Tudásbázis következő cikkében tájékozódhat:
2633145 A 2008 R2Note SQL Server 11-es kumulatív frissítési csomagja Mivel a buildek összegzőek, minden új javításkiadá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
4. összegző frissítési csomag SQL Server 2008 R2 SP1-hez
A hiba javítása először a 4. kumulatív frissítésben jelent meg. A SQL Server 2008 R2 SP1 kumulatív frissítési csomagjának beszerzéséről a Microsoft Tudásbázis következő cikkében tájékozódhat:
2633146 4. összegző frissítési csomag SQL Server 2008 R2 SP1Note Mivel a buildek összegzőek, minden új javításkiadás tartalmazza az összes gyorsjavítást és az előző SQL Server 2008 R2 SP1 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):
2567616 A SQL Server 2008 R2 buildek, amelyek a 2008-SQL Server R2 SP1 megjelenése után jelentek meg
Állapot
A Microsoft megerősítette, hogy ez a probléma „A következőkre vonatkozik:” részben felsorolt Microsoft-termékekre vonatkozik.
További információ
A VLF-szegmensek számának ellenőrzéséhez tekintse át az SQL-hiba naplófájlját, majd keresse meg a naplósorszámot (LSN) az egyes tranzakciónapló-biztonsági mentési fájlokban. 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 sok virtuális naplóval Files (VLF)-et tartalmazó, töredezett tranzakciónapló 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.}
Hivatkozások
A naplósorszámokkal (LSN) kapcsolatos további információkért látogasson el a következő MSDN-webhelyre:
A naplósorszámokkal kapcsolatos általános információk
A naplófájlstruktúra adatbázis-helyreállítási időre gyakorolt hatásával kapcsolatos további információkért látogasson el az MSDN következő webhelyére:
Hogyan befolyásolhatja a naplófájlstruktúra az adatbázis-helyreállítási időt ?A tranzakciónapló virtuális fájljaival kapcsolatos további információkért látogasson el a következő MSDN-webhelyre:
Kerülő megoldás
-
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 offline vagy helyreállított állapotát SQL Server Management Studio (SSMS) látja. A SQL Server leállítása általában nem nyújt enyhülést a lassú helyreállításhoz, és több időt vehet igénybe ugyanazon helyreállítási elemzési fázis, az ismételt végrehajtás vagy a visszavonási fázis megismétlése.
-
Kerülje a több ezer VLF-ettartalmazó tranzakciónapló-sorozat visszaállítását Ha lassú teljesítményt tapasztal egy adatbázis biztonsági mentési fájllal történő visszaállítása és helyreállítása során, elkerülheti a több ezer VLF-et tartalmazó tranzakciónapló-sorozatok visszaállítását. Annak a biztonságimásolat-fájlnak a azonosításához, amely a legtöbb rögzített virtuális naplófájlt tartalmazza, a következő utasítással tekintheti meg a napló biztonsági mentési fájljainak FirstLSN és LastLSN oszlopait: RESTORE HEADERONLY FROM DISK='C:\folder\file.trn'Dönthet úgy, hogy nem állítja vissza a napló biztonsági mentési fájljait. 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 teljesen 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 erősen 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 helyreállítás leállításához a napló erősen töredezett része előtt. 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áshoz a SQL Server újraindítása után. SQL Server meg kell keresnie 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 a helyreállítás befejezéséhez az adatbázis biztonságos online állapotba helyezéséhez. A helyreállítás során nem hagyhatja ki biztonságosan a tranzakciókat.