Artykuły

A A A
Drukuj Ekportuj do PDF
Opublikowane: 2010.07.14 7:38 | Paweł Potasiński

[Porada] SQL Server - jak zmniejszyć plik dziennika transakcji bazy danych?

tagi: SQL SQL Server
SQL Server - jak zmniejszyć plik dziennika transakcji bazy danych?

Jeżeli uważasz, że plik dziennika transakcji bazy danych jest za duży (najczęściej rozmiar dziennika zwiększa się, gdy administrator baz danych nie zadba o cykliczne wykonywanie kopii zapasowych dziennika transakcji), użyj metody złożonej z następujących kroków:

1. Jeżeli baza działa w trybie (recovery model) FULL lub BULK-LOGGED, wykonaj kopię zapasową dziennika transakcji używając polecenia BACKUP LOG, np.

BACKUP LOG TwojaBazaDanych TO DISK = 'C:\LogBackup.trn';

2. Jeżeli baza działa w trybie (recovery model) SIMPLE, uruchom polecenie:

USE TwojaBazaDanych;
CHECKPOINT;

3. Zmniejsz rozmiar pliku dziennika transakcji używając polecenia DBCC SHRINKFILE, np.

USE TwojaBazaDanych;
DBCC SHRINKFILE('PlikDziennikaTransakcjiTwojejBazyDanych');

Po wykonaniu operacji zmniejszania pliku dziennika transakcji należy bezzwłocznie rozważyć jego zwiększenie do rozmiaru, który zapewni pracę bazy danych bez automatycznego powiększania tego pliku.

Zapamiętaj: zmniejszanie plików (jakichkolwiek) baz danych w SQL Server to ostateczność!

W razie, gdyby podany algorytm nie przynosił skutku należy powtórzyć opisane operacje kilkukrotnie, a jeżeli i to nie pomoże, należy sprawdzić, co jest przyczyną niemożliwości zmniejszenia pliku dziennika transakcji (w SQL Server 2005 i nowszych: partrz kolumna log_reuse_wait_desc w widoku sys.databases).

Więcej:
http://zine.net.pl/blogs/sqlgeek/archive/2008/07/25/pl-m-j-log-jest-za-du-y.aspx

http://www.microsoft.com/poland/technet/article/art0091_01.mspx


Komentarze 0 Masz uwagi do tej strony? Napisz

Dodaj komentarz

avatar

Zaloguj się lub Zarejestruj się aby wykonać tę czynność.

Autor Paweł Potasiński
avatar
 

Partner Technology Advisor w Microsoft Polska. Z zamiłowania programista SQL. Wykładowca akademicki na kilku uczelniach w Warszawie. Dawniej pracował jako administrator baz danych, programista systemu ERP, konsultant Business Intelligence oraz trener. Założyciel Polskiej Grupy Użytkowników SQL Server (PLSSUG). Prelegent na licznych konferencjach krajowych i zagranicznych. MVP w kategorii SQL Server w latach 2008-2011. Posiadacz licznych certyfikatów Microsoft, w tym kompletu certyfikatów MCITP z zakresu SQL Server 2008 oraz certyfikatu MCT (od 2004 roku). Blog: www.sqlgeek.pl

Załóż konto
CodeGuru to miejsce dla każdego programisty. Przez lata portal rozwijany był siłami społeczności i to właśnie społeczność programistów jest tutaj najważniejsza. CG od wielu lat gromadzi wokół siebie coraz większą grupę pasjonatów. Warto być jej częścią!

Dowiedz się więcej o CodeGuru

Geek Club - Windows Phone

 

MetroOne

Idź na górę strony