Nisem strokovnjak za SQL in na to se spomnim vsakič, ko moram narediti nekaj več od osnov. Imam testno podatkovno zbirko, ki ni velika, vendar je dnevnik transakcij vsekakor velik. Kako lahko počistim dnevnik transakcij?
Tukaj je preprost in zelo neeleganten & amp; potencialno nevaren način.
Domnevam, da ne izdelujete varnostnih kopij dnevnikov. (ki skrajšajo dnevnik). Svetujem vam, da spremenite model obnovitve s full na simple. To bo preprečilo preveliko količino dnevnika.
Če dnevnikov transakcij ne uporabljate za obnovitve (tj. izdelujete le popolne varnostne kopije), lahko način obnovitve nastavite na "Simple" in dnevnik transakcij se bo zelo kmalu zmanjšal in nikoli več zapolnil.
Če uporabljate SQL 7 ali 2000, lahko v zavihku Možnosti zbirke podatkov omogočite možnost "skrajšati dnevnik ob kontrolni točki". To ima enak učinek.
To seveda ni priporočljivo v produkcijskih okoljih, saj ne boste mogli obnoviti na določeno časovno točko.
Če želite skrajšati datoteko dnevnika:
Zmanjšanje datoteke dnevnika:
Varnostna kopija dnevnika [DBName] z No_Log
Zmanjšajte podatkovno zbirko tako, da:
z uporabo upravitelja podjetja :- z desnim klikom na podatkovno zbirko, vsa opravila, skrčiti podatkovno zbirko, datoteke, izbrati datoteko dnevnika, OK.
z uporabo T-SQL :- Dbcc Shrinkfile ([Log_Logical_Name])
Logično ime dnevniške datoteke lahko najdete tako, da zaženete program sp_helpdb ali pogledate v lastnosti podatkovne zbirke v programu Enterprise Manager.