10. december 1999 - 04:21Der 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.
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
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)
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.
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.
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
Leder efter eksempel på 80% og et gentagende backup job.......
Synes godt om
Ny brugerNybegynder
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.