Dołącz do nas!

Wszystkie znaki interpunkcyjne za wyjątkiem kropek, łączników, znaków podkreśleń i spacji są niedozwolone.
Adres e-mail, koniecznie prawidłowy. Będą nań przesyłane wszystkie wiadomości e-mail od systemu. Adres nie jest udostępniany publicznie i będzie wykorzystywany jedynie w wypadku prośby o przesłanie nowego hasła lub do przesyłania informacji o nowościach czy innych komunikatów.
CAPTCHA
To pytanie ma na celu ochronę przed automatycznym spamowaniem oraz ustalenie, czy odwiedzający stronę jest człowiekiem.
Image CAPTCHA
Wpisz kod widoczny powyżej.

Logowanie

Nazwa użytkownika witryny Project Envision.
Hasło powiązane z nazwą użytkownika.
Prześlij nowe hasło

How to check free space in transaction log on Sql Server

Transaction Log is a crucial part of every Sql Server Database. So why so many DBA even do not know how to check how much space is used by Sql Server in Transaction Log? Transaction Log records all transactions and database modifications made during using database.

Transaction Log supports recovery of individual transactions, which is often used by applications. When either whole set of sql operations completes successfully and it committed or one instruction from the set fails and everything is being rolled back.

Transaction Log supports recovery of incomplete transactions when Sql Server is started. If Sql Server is restarted, for example because of Windows restart there is a possibility that some modifications were not written from buffer cache to data files. During such recovery each incomplete transaction is being rolled back.

Transaction Log is also used in rolling database forward during a restore operation. First the database backup is being restored than Sql Server applies all information recorded in Transaction Log.

Transaction Log is also used in Transactional Replication and Standby Servers.

After that brief introduction to the main purpose of Transaction Log, let’s move into details. DBA can check log space used by Transaction Log by using DBCC SQLPERF(LOGFILE) command.

dbcc sqlperf(logspace)
Database Name Log Size (MB) Log Space Used (%) Status
----------------- ------------- ------------------ -----------
master 1.242188 59.1195 0
tempdb 1.242188 62.26415 0
model 0.9921875 43.70079 0
msdb 1.992188 54.11765 0
ReportServer 0.8046875 51.51699 0
cms400min 8.304688 28.4866 0
cms400 655.2422 12.30893 0

(8 row(s) affected)

To check Transaction Log settings DBA can query sys.database_files in a database where he wants to check the settings.


use cms400
select name, physical_name, size, max_size, growth
from sys.database_files
where type = 1

name physical_name size max_size growth
----------- ---------------------------------------------- -------- ---------- -------
cms400_log C:\(truncated for readeability) \cms400_log.LDF 83872 268435456 10