Sadržaj:

Šta uzrokuje blokade baze podataka?
Šta uzrokuje blokade baze podataka?

Video: Šta uzrokuje blokade baze podataka?

Video: Šta uzrokuje blokade baze podataka?
Video: Šta geni otkrivaju o ponašanju | Snežana Smederevac | TEDxNoviSad 2024, Maj
Anonim

A zastoj se dešava kada dvije (ili više) transakcija blokiraju jedna drugu držeći zaključavanje na resursima koji su također potrebni svakoj transakciji. Na primjer: Transakcija 1 drži bravu na tabeli A. Većina ljudi će to napisati zastoji ne može se izbjeći kod više korisnika baza podataka.

Što su zastoji u bazi podataka?

Zastoji . U baza podataka , a zastoj je situacija u kojoj dvije ili više transakcija čekaju jedna drugu da odustanu od zaključavanja. Na primjer, transakcija A može zadržati zaključavanje nekih redova u tabeli Računi i treba ažurirati neke redove u tabeli Nalozi da bi završila.

Također Znajte, može li odabir uzrokovati zastoj? 2 odgovora. Zastoj se dešava kada jedan upit zahvati zaključavanje objekta (redovi, stranice podataka, opseg, tabele itd.) i drugi resurs pokušava da mu pristupi. Najmanja jedinica u SQL Serveru su stranice sa podacima i SQL drži zaključavanje stranice dok radi na njoj. Dakle, da, moguće je da dvoje izaberite izjava mogu stvoriti zastoj.

Dodatno, kako možemo spriječiti zastoj u bazi podataka?

Savjeti za izbjegavanje zastoja

  1. Osigurajte da je dizajn baze podataka pravilno normaliziran.
  2. Razvijte aplikacije za pristup objektima servera svaki put istim redoslijedom.
  3. Nemojte dozvoliti unos korisnika tokom transakcije.
  4. Izbjegavajte kursore.
  5. Neka transakcije budu što kraće.

Kako riješiti zastoj?

Pametan programer mora uraditi sljedeće korake da bi se oporavio od zastoja:

  1. Provjerite ima li greške broj 1205, kada se pojavi izuzetak.
  2. Nakratko pauzirajte aplikaciju kako biste drugom upitu dali vremena da dovrši svoju transakciju i oslobodi stečena zaključavanja.
  3. Ponovo pošaljite upit, koji je vratio SQL Server.

Preporučuje se: