In practice (and in general) is a transaction log a part of the database server or is it a part of the database itself? I've not been able to locate information in this domain anywhere. I need the information for a model that I'm putting together...

If this is extremely dependent upon implementation, I'm looking at SQL Server 2005/2008, MySQL and SQLite. But I'd prefer to stay as general as possible.

I imagine that if the transaction log is a part of the server, then there would be one (maybe two) transaction log in the entire server. This is opposed to each database having one transaction log which would give us many transaction logs in the single server.

link|improve this question

80% accept rate
feedback

2 Answers

up vote 2 down vote accepted

To add to Joe's comment, when a change to a database is transmitted to a database server, it is "aimed" at one specific database. However, the change does not take place to the database directly. It is stored in memory (RAM) and then written to a transaction log. The transaction logs are then written (committed) to the actual databases. When that committal takes place varies based on the database software (MySQL, SQL Server, etc.), the database engine settings and other variables.

All that to say: transaction logs are, generally speaking, a component of the individual databases. You could theoretically have hundreds (thousands?!) of transaction logs on a single server. Some exceptions exist, such as Exchange servers where the transaction logs are a component of the Storage Group which may have multiple databases... but I won't mention that since it would muddy the waters. =)

link|improve this answer
Thank you for the detail. – Frank V Oct 29 '09 at 2:02
Way to expound on my answer. Nice. See you around the water cooler. ;) – joeqwerty Oct 29 '09 at 2:05
@Frank: glad to help! – WesleyDavid Oct 29 '09 at 2:09
@Joe: My Forum-Send-Conector is perpetually set to Verbose. =) Oh, I +1'd you because I felt sorry for ripping off your answer and getting points for just being talkative. =P – WesleyDavid Oct 29 '09 at 2:11
@Non: Thanks for the +1. I +1'd you because I knew you couldn't resist giving it your all. I would expect nothing less. Well played. :) – joeqwerty Oct 29 '09 at 2:18
feedback

In Microsoft SQL Server the transaction log is a component of the database.

link|improve this answer
Thank you for your answer but I needed to stay general and details help. :-) Cheers! – Frank V Oct 29 '09 at 2:03
You can't stay general and have details too. Details are specific. My answer was general to Microsoft SQL Server. Hopefully Non's answer was a little better for you. :) – joeqwerty Oct 29 '09 at 2:07
feedback

Your Answer

 
or
required, but never shown

Not the answer you're looking for? Browse other questions tagged or ask your own question.