Avatar billede run Nybegynder
10. december 1999 - 04:21 Der er 3 kommentarer og
2 løsninger

truncate transaction log

Jeg har 30 mb plads på en sql server hvoraf 5mb er sat af til transaction log. Mit problem er at min transaction log hurtigt bliver fuld og jeg er nødt til at lave en truncate. Er løsningen at sætte truncate log on checkpoint = TRUE eller er der en anden løsning ?
DBen bliver opdateret 15-20000 gange om dagen.
Avatar billede blackthorne Nybegynder
10. december 1999 - 10:35 #1
når du opdatere 15 - 20000 gange om dagen skal du have en langt større transactionslog end 5 mb.

Truncate log on checkpoint skal helst kun benyttes under udvikling eller hvis man kan tåle at miste sin database indtil sidste backup.

Transactionsloggen indeholder alle hændelser der er sket siden sidste backup. Så hvis din server crasher skal man restore den seneste backup og restore transactionlogen. Derved mistere du kun meget få data, oftes kun den seneste hændelse.

Der er flere muligheder for at tømme transaction log
1. dump transaction
2. lav backup af databasen (tømmer transacionslogen)
Avatar billede mjanum Nybegynder
10. december 1999 - 18:13 #2
Hvis du har den på en MS SQL 7.0 (måske også tidl. ver.) har du også mulighed for at sætte et job op, hvor serveren vil tage en automatisk backup af transactionslog'en når den f.eks. når 80% af sin str. (log'en tømmes herved) Hvis serveren crasher starter du ud med seneste db backup og herefter de transactionslog'er der er lavet backup på (siden sidste db backup) og til sidst transactionslog'en der ikke er taget backup af (nu er du fremme ved seneste hændelse igen - som ved blackthornes fremgangsmåde) MS SQL hjælper med at holde styr på rækkefølgen. Fordelen her er at det er hurtigere at tage backup af transactionslog'en, og så kan man vente med backup af db'en til et tidspunkt hvor belastningen på serveren er lille.
Avatar billede run Nybegynder
10. december 1999 - 22:38 #3
Hvis 5mb er for lidt hvor meget skal jeg så bruge ?
Hvordan laver du backup ved 80 % ? Jeg kan kun finde muligheden for at gøre det ved forskellige tidsintervaller.
Avatar billede run Nybegynder
11. december 1999 - 01:25 #4
Jeg har problemer med at få mit job til at køre. Jeg kan sagtens lave en backup af transaction log hvis jeg gør det fra taskpad som en engangs event, men hvis jeg vælger at udføre det som et job der gentager sig, fx hver time, fejler den. Den fejler selv hvis jeg højreklikker på jobbet og vælger run now. Hvad kan der være galt ? Sætningen der kører ser ud som følger:

BACKUP DATABASE [jetsdk] TO  DISK = N'C:\MSSQL7\BACKUP\jetsdk' WITH  INIT ,  NOUNLOAD ,  NAME = N'jetsdk newbackup',  SKIP ,  STATS = 10,  NOFORMAT



I skal nok få jeres points når i svarer ;o)
Avatar billede mjanum Nybegynder
13. december 1999 - 09:05 #5
Leder efter eksempel på 80% og et gentagende backup job.......
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester