A cikk fontos tippeket javasol a holtpontok elkerülésére SQL Servers
Bár SQL Server Az elmúlt néhány évben hatalmas fejlődésnek volt tanúja, a felhasználók még mindig rendszeresen szembesülnek a holtpontok helyzetével. Ideális esetben egy adatbázis-kiszolgálónak képesnek kell lennie több kérés lekérésére, de ez gyakran blokkokat eredményez. Azokat az ütközéseket, amikor egy folyamat egy másik erőforrás felszabadítására vár, blokkoknak nevezzük. És akkor ott vannak a holtpontok.
Képzeljünk el egy olyan helyzetet, amikor az egyik személy egy erőforrás kiadását kéri a másodiktól, a másik pedig arra vár, hogy az első feladja. Ennek eredményeként mindketten holtpontra kerültek. Egyik folyamat sem folytatódhat, mivel mindkettő zárolva van, és a másiknak fel kell oldania az erőforrást vagy a zárolást.
Munka közben SQL servers, a holtpontok meglehetősen gyakoriak, és akadályozhatják az egész folyamatot. A holtpontokat nem lehet teljesen elkerülni, de a patthelyzet kialakulásának esélye minimálisra csökkenthető.
Patthelyzet probléma

Meg kell jegyezni, hogy a holtpontok közvetlenül befolyásolják a teljesítményt, és leállíthatják az adatbázis feldolgozását.
1. Tartsa meg a sorrendet
A holtpontok elkerülhetetlenek, ha az erőforrások feldolgozása nem egy jól meghatározott sorrendben történik. A holtpontok minimalizálása érdekében az összes egyidejű tranzakciónak jól meghatározott sorrendben kell elérnie az objektumokat. Az adatbázis-adminisztrátoroknak egyértelmű szabályokat kell kidolgozniuk az adatbázis-objektumok eléréséhez. A zárolásfigyelők általában holtpont-ellenőrzést végeznek, és észlelés esetén kiválasztanak egy holtpont-áldozatot, és visszagörgetik a tranzakcióját. Így minden zárolás feloldódik, és a korábbi munkamenetek folytathatják a folyamatot. A holtpont-áldozatokat a szerver által beállított holtpont-prioritás vagy a visszagörgetési költség alapján választják ki.
2. Korlátozás a Tranzakció során
Korlátozhatja a felhasználók számára, hogy bármilyen adatot adjanak meg a tranzakció feldolgozása során, és frissítheti az adatokat a tranzakció előtt, hogy elkerülje a holtpontokat. Ezenkívül próbálja meg minimális szinten tartani a felhasználói interakciót, mert ez befolyásolja a sebességet. Ideális esetben a tranzakcióknak rövideknek és gyorsaknak kell lenniük a holtpontok elkerülése érdekében. Az alkalmazást úgy kell megtervezni, hogy a lehető legrövidebb idő alatt megragadja a zárakat, és a lehető leggyorsabban kioldja azokat.
3. NOLOCK tipp
Amikor valaki lekérdezést futtat egy tábla ellen az SQL alapértelmezett elkülönítési szintjén, a tábla zárolva lesz, és a következő lekérdezéseknek várniuk kell a kiadásra. A NOLOCK Hint hasznos az ilyen helyzetekben, mivel lehetővé teszi a tábla zárolásának felülbírálását és más lekérdezések könnyű elérését.
4. Használja a kötött kapcsolatokat
Ha ugyanaz az alkalmazás két vagy több, egymással együttműködő kapcsolatot tud megnyitni, akkor nem hoz létre holtpontokat. Ezért ajánlatos kötött kapcsolatokat használni.
A holtpontok nem az egyetlen probléma, amellyel valószínűleg megtapasztalhatja, amikor a SQL Server adatbázis. Valójában események sql korrupció nagyobb valószínűséggel okoznak bánatot. Az adatvesztés elkerülése érdekében fektessen be egy hatékony helyreállítási eszközbe, mint pl DataNumen SQL Recovery.
Szerző Bevezetés:
Victor Simon adat-helyreállítási szakértő DataNumen, Inc., amely világelső az adat-helyreállítási technológiák területén, beleértve mdb helyreállítás és SQL helyreállítási szoftvertermékek. További információért látogasson el https://www.datanumen.com/