2013. január 22., kedd

Sql Server Error log méretének csökkentése

Üdv!

Találkoztam egy jó kis szituval, és gondoltam hátha hasznos lesz másnak is!

Adott egy instance, sok darab adatbázissal, amik elég sűrűn (mondhatni irreálisan sűrűn) kapnak tran-log backupot, és ezt minden nap persze. Ennek a miértjét hagyjuk is, én sem lettem meggyőzve arról, hogy ez miért jó így... És erre még rájönnek a sűrű full backupok is.

Eljött az idő, amikor kényelmetlenné vált az, hogy az sql server error logja túl nagy lett...

Mi a köze a kettőnek egymáshoz?

Minden sikeres backup (így a log backup is) csinál egy bejegyzést az error logba. Általában ezt nem vesszük figyelembe, mert beállítjuk az alertet, ha a backup hibára fut és kész... Esetleg még a sikeres backupról is küldünk levelet magunknak. Viszont ezzel az aprósággal nem foglalkozunk, mert elfér kategória...

Ha ilyen érdekes mentési tervünk van (Maintanance Plan), akkor érdemes beállítani egy Trace flaget, amit éppen erre a célra terveztek.

Méghozzá ezt : 3226

Két féle képpen tudod ezt megtenni:

1.: Sql Server Configutation Managerben a Startup Paraméterekhez hozzáadod azt hogy -T3226
2.: Management Studio / Query ablakba beírni: DBCC TRACEON (3226, -1)


 
Jó munkát!

AdventureWorks 2012 "install"

Üdv mindenkinek!



Mostanában többször is szembesültem azzal, hogy evidenciának vettem egy játszós adatbázis "installálását", amit nem szabadott volna. Ezért most szeretném ezt pótolni ezzel a bejegyzéssel...

Mi a megoldás abban az esetben, ha a frissen letöltött AdventureWorks 2012 tesztadatbázisunkat nem tudjuk jobb klikk / Attach parancssal működésre bírni?


A hibaüzenet általában valami hasonló szokott lenni:

An error occurred, when attaching the database(s). Click the hyperlink in the Message column for details.


Hát ez egyrészt jó beszédes hibaüzenet, másrészt az említett link sem ad normális infót a dolgok miértjéről.

A gond a következő: 

Az, hogy te letöltötted az mdf filet, még nem lesz elég hogy az sql el kezdjen vele foglalkozni, ugyanis a "minden infót két helyen tárolunk" elv betartásához szükséges egy tranzakciós log file megadása is. Ezen pedig a jobb klikkes, varázslós módszerrel szépen át tudsz siklani.
( Oké, többes szám, én is többször megtettem már.)

Ezért javaslom, hogy ezt írd be a kattogtatás helyett, és elsőre megeszi a skúl. (Köszi Kacsa, annyiszor mondtad már, hogy rámragadt :)  )

CREATE DATABASE AdventureWorks2012
ON (FILENAME = 'c:\temp\AdventureWorks2012_Data.mdf')
FOR ATTACH_REBUILD_LOG



Feltételezve, hogy a játszós adatbázisodat a c:\temp könyvtárba tetted.