ID članka: 873235 - Pregledajte proizvode na koje se odnosi ovaj članak.
Proširi sve | Sažmi sve

Na ovoj stranici

UVOD

U ovom se članku opisuju koraci koje morate slijediti kada zapisnici transakcija postanu preveliki. Puni zapisnici transakcija mogu učiniti bazu podataka Microsoft SQL poslužitelja neupotrebljivom. U ovom se članku opisuje kako izvršiti postupak rezanja i tako smanjiti zapisnike transakcija te kako spriječiti njihov neočekivan rast.

DODATNE INFORMACIJE

Smanjivanje veličine zapisnika transakcija

Popravak situacije u kojoj je zapisnik transakcija pun, morate smanjiti veličinu zapisnika transakcija. Da biste to učinili, morate odrezati neaktivne transakcije u zapisniku transakcija i tako smanjiti datoteku zapisnika transakcija.

Napomena Zapisnici transakcija vrlo su važni za održavanje integriteta transakcija za bazu podataka. Stoga ne smijete brisati datoteke zapisnika transakcija čak ni nakon što stvorite sigurnosnu kopiju baze podataka i zapisnika transakcija.


Za dodatne informacije o smanjivanju veličine zapisnika transakcija posjetite sljedeće Microsoftovo web-mjesto:
Smanjivanje zapisnika transakcija za SQL Server 2000
Smanjivanje zapisnika transakcija za SQL Server 2005

Odrežite neaktivne transakcije u zapisniku transakcija

Kada su zapisnici transakcija puni, morate odmah stvoriti sigurnosnu kopiju datoteke zapisnika transakcija. Dok se stvara sigurnosna kopija datoteka zapisnika transakcija, SQL Server automatski odrezuje neaktivni dio zapisnika transakcija. Neaktivni dio datoteke zapisnika transakcija sadrži završene transakcije i stoga SQL Server više ne koristi datoteku zapisnika transakcija tijekom postupka oporavka. SQL Server ponovno iskorištava taj skraćeni, neaktivni prostor u zapisniku transakcija umjesto da dopusti daljnji rast zapisnika transakcija i tako zauzme više prostora.

Za dodatne informacije o problemima koji se mogu pojaviti pri stvaranju sigurnosne kopije zapisnika transakcija i problemima koji se mogu pojaviti pri vraćanju sigurnosnih kopija zapisnika transakcija, pogledajte sljedeće teme u dokumentaciji SQL Server Books Online:
  • Sigurnosne kopije zapisnika transakcija
  • Sigurnosno kopiranje i vraćanje zapisnika transakcija
Možete također izbrisati neaktivne transakcije iz datoteke zapisnika transakcija pomoću metode Skraćivanje. Dodatne informacije o skraćivanju zapisnika transakcija potražite u temi "Skraćivanje zapisnika transakcija" u dokumentaciji SQL Server Books Online.

Važno Nakon ručnog skraćivanja datoteka zapisnika transakcija, morate stvoriti sigurnosnu kopiju cijele baze podataka prije stvaranja sigurnosne kopije zapisnika transakcija.

Dodatne informacije o problemima koji se mogu pojaviti kada skraćujete datoteke zapisnika transakcija potražite u članku iz Microsoftove baze znanja pod brojem
62866 Razlozi zbog kojih se SQL zapisnik transakcija ne skraćuje (Tekst je možda na engleskom)

Smanjivanje datoteke zapisnika transakcija

Veličina datoteke zapisnika ne smanjuje se postupkom stvaranja sigurnosne kopije niti metodom Skraćivanje. Da biste smanjili veličinu datoteke zapisnika transakcija, morate smanjiti datoteku zapisnika transakcija. Da biste smanjili datoteku zapisnika transakcija na potrebnu veličinu i uklonili nekorištene stranice, morate primijeniti postupak DBCC SHRINKFILE. Izjava DBCC SHRINKFILE Transact-SQL može smanjiti samo neaktivni dio u datoteci zapisnika.

Napomena Izjava DBCC SHRINKFILE Transact-SQL ne može sama skratiti zapisnik i smanjiti korišteni prostor u datoteci zapisnika.

Dodatne informacije o smanjivanju datoteka zapisnika transakcija potražite u sljedećim temama u dokumentaciji SQL Server Books Online:
  • Smanjivanje zapisnika transakcija
  • DBCC SHRINKFILE
Dodatne informacije o smanjivanju datoteka zapisnika transakcija u sustavu SQL Server 2000 potražite u članku iz Microsoftove baze znanja pod brojem
272318 Smanjivanje zapisnika transakcija u sustavu SQL Server 2000 pomoću naredbe DBCC SHRINKFILE (Tekst je možda na engleskom)
Dodatne informacije o problemima koji se mogu pojaviti kada smanjujete datoteke zapisnika transakcija potražite u člancima iz Microsoftove baze znanja pod sljedećim brojevima
814574 PRB: Poruka o pogrešci: "Cannot shrink log file ..." ("Nije moguće smanjiti datoteku zapisnika...") prikazuje se pri smanjivanju datoteke zapisnika transakcija (Tekst je možda na engleskom)
324432 PRB: Naredbe DBCC SHRINKFILE i SHRINKDATABASE možda neće funkcionirati zbog rijetko popunjenog teksta, nteksta ili stupaca slike (Tekst je možda na engleskom)

Sprječavanje neočekivanog rasta datoteka zapisnika transakcija

Da biste spriječili neočekivan rast datoteka zapisnika transakcija, primijenite jedan od sljedećih načina:
  • Postavite veličinu datoteka zapisnika transakcija na visoku vrijednost kako biste izbjegli automatsko proširenje datoteka zapisnika transakcija.
  • Konfigurirajte automatsko proširenje datoteka zapisnika transakcija koristeći memorijske jedinice umjesto postotka nakon što dobro procijenite optimalnu veličinu memorije.

    Dodatne informacije o problemima koji se mogu pojaviti prilikom konfiguracije mogućnosti automatskog rasta potražite u članku iz Microsoftove baze znanja pod brojem
    315512 Postupci vezani uz konfiguraciju automatskog rasta i automatskog smanjivanja (Tekst je možda na engleskom)
  • Promijenite model oporavka. U slučaju katastrofe ili oštećenja podataka morate oporaviti bazu podataka kako bi se održala dosljednost podataka i integritet transakcija baze podataka. Na temelju stanja podataka u bazi podataka možete primijeniti jedan od sljedećih modela oporavka da biste odredili način stvaranja sigurnosne kopije podataka i procijenili izloženost gubitku podataka:
    • Jednostavan model oporavka
    • Potpuni model oporavka
    • Model oporavka skupnog zapisnika
    Upotrebom jednostavnog modela oporavka možete oporaviti bazu podataka na najnoviju sigurnosnu kopiju baze podataka. Upotrebom potpunog modela oporavaka ili modela oporavka skupnog zapisnika možete oporaviti bazu podataka do točke u kojoj se pojavila pogreška vraćanjem baze podataka sa sigurnosnim kopijama datoteke zapisnika transakcija.

    Prema zadanim postavkama, u sustavima SQL Server 2000 i SQL Server 2005 model oporavka za bazu podataka SQL poslužitelja postavljen je na Potpuni model oporavka. Kod potpunog modela oporavka, redovnim stvaranjem sigurnosnih kopija zapisnika transakcija sprječava se prekomjeran rast datoteke zapisnika transakcija razmjerno veličini baze podataka. Međutim, ako se ne stvaraju redovne sigurnosne kopije zapisnika transakcija, datoteka zapisnika transakcija će narasti te popuniti disk, pa možda nećete moći izvoditi postupke izmjene podataka u bazi podataka SQL poslužitelja.

    Ako ne želite koristiti datoteke zapisnika transakcija tijekom postupka oporavka od katastrofe, možete promijeniti model oporavka s potpunog na jednostavni.
  • Redovno stvarajte sigurnosne kopije datoteka zapisnika transakcija kako bi se izbrisale neaktivne transakcije u zapisniku transakcija.
  • Oblikujte transakcije tako da budu male.
  • Uvjerite se da nijedna neizvršena transakcija nije aktivna neodređeno vrijeme.
  • Postavite mogućnost svakodnevnog ažuriranja statistike.
  • Da biste defragmentirali indekse za poboljšanje radnih performansi produkcijskog okruženja, upotrijebite izjavu DBCC INDEXDEFRAG Transact-SQL umjesto izjave DBCC DBREINDEX Transact-SQL. Ako pokrenete izjavu DBCC DBREINDEX, zapisnik transakcija može se znatno proširiti kada je baza podataka SQL poslužitelja u načinu potpunog oporavka. Osim toga, izjava DBCC INDEXDEGRAG ne zadržava zaključavanje dugo, za razliku od izjave DBCC DBREINDEX.

    Dodatne informacije o defragmentiranju indeksa u sustavu SQL Server 2000 potražite na sljedećem web-mjestu tvrtke Microsoft:
    Praktični savjeti za defragmentaciju indeksa u sustavu Microsoft SQL Server 2000
    Ako morate pokrenuti izjavu DBCC DBREINDEX kao zadatak koji je dio plana održavanja baze podataka, morate rastaviti zadatak na nekoliko zadataka. Osim toga, morate često stvarati sigurnosne kopije zapisnika transakcija između izvršavanja zadataka.

Dodatne informacije o datotekama zapisnika transakcija

U sustavima SQL Server 2000 i SQL Server 2005 svaka baza podataka sadrži barem jednu datoteku podataka i jednu datoteku zapisnika transakcija. SQL poslužitelj fizički pohranjuje podatke u datoteku podataka. Datoteka zapisnika transakcija pohranjuje pojedinosti o svim izmjenama koje izvršite na bazi podataka SQL poslužitelja i pojedinosti o transakcijama koje su izvršile svaku izmjenu. S obzirom da se integritet transakcija smatra osnovnom i intrinsičnom osobinom SQL poslužitelja, nije moguće isključiti zapisivanje pojedinosti o transakcijama u SQL poslužitelju.

Datoteka zapisnika transakcija logično je podijeljena na manje segmente koji su poznati kao datoteke virtualnog zapisnika. U sustavu SQL Server 2000 možete konfigurirati datoteku zapisnika transakcija tako da se proširi po potrebi. Proširenjem zapisnika transakcija može upravljati korisnik a moguće ga je i konfigurirati tako da koristi sav raspoloživ prostor na disku. Sve izmjene veličine datoteke zapisnika transakcija koje SQL poslužitelj izvrši, poput skraćivanja ili povećavanja datoteka zapisnika transakcija, izvršavaju se u jedinicama datoteka virtualnog zapisnika.

Ako je datoteka zapisnika transakcija koja odgovara bazi podataka SQL poslužitelja popunjena i ako ste postavili mogućnost automatskog povećavanja datoteka zapisnika transakcija, datoteka zapisnika transakcija povećava se u jedinicama datoteka virtualnog zapisnika. Ponekad datoteka zapisnika transakcija može postati vrlo velika i može vam ponestati prostora na disku. Ako se datoteka zapisnika transakcija poveća do te mjere da iskoristi sav raspoloživ prostor na disku te se više ne može proširivati, nećete moći izvršavati postupke izmjene podataka u bazi podataka. Osim toga, SQL poslužitelj može označiti bazu podataka kao sumnjivu zbog nedostatka prostora za proširenje zapisnika transakcija.

Dodatne informacije o scenarijima u kojima dolazi do neočekivanog rasta datoteke zapisnika transakcija potražite u članku iz Microsoftove baze znanja pod brojem
317375 Zapisnik transakcija na SQL poslužitelju neočekivano raste ili je popunjen (Tekst je možda na engleskom)

REFERENCE

Dodatne informacije o ispunjavanju zahtjeva za dodatnim prostorom na disku tijekom postupka oporavka potražite u temi "Nedovoljno prostora na disku" u dokumentaciji SQL Server Books Online. Dodatne informacije o arhitekturi zapisnika transakcija potražite u sljedećim temama u dokumentaciji SQL Server Books Online:
  • Arhitektura zapisnika transakcija
  • Logička arhitektura zapisnika transakcija
  • Fizička arhitektura zapisnika transakcija
Dodatne informacije o modelima oporavka u sustavu SQL Server 2000 potražite u sljedećim temama u dokumentaciji SQL Server Books Online:
  • Odabir modela oporavka
  • Jednostavan oporavak
  • Potpuni oporavak
  • Oporavak skupnog zapisnika
  • Prebacivanje između modela oporavka

Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Svojstva

ID članka: 873235 - Posljednja izmjena: 29. veljače 2012. - Revizija: 1.0
ODNOSI SE NA:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Ključne riječi: 
kbsqlsetup kbdiskmemory kbdisasterrec kbhowto kbconfig kbinfo kbcip KB873235

Pošaljite povratne informacije

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com