Category: "Monitoring"

SQL Server Start Time
Feb 22nd
Have you tried finding out the time, your SQL Server instance has been started? There are some sophisticated solutions, like the one from Tracy Hamlin (twitter), which takes advantage of the fact that tempdb is re-created every time, SQL Server starts. Her solution goes like this:
select create_date |
Another answer to the question, I've seen sometimes on the internet queries the login time for any of the system processes:
select login_time |
This was my preferred way - until yesterday, when I discovered the following simple method:
select sqlserver_start_time |
Easy, isn't it? Interestingly though, every of the above three queries yields a different result. Here's a query with a sample output:
select (select sqlserver_start_time |
Result:
It seems the SQL Server service must be started first. Only after the service is running, tempdb is created followed by a subsequent start of all sysprocesses. I can't imagine that the diverse three times make any difference in practice, e.g. if you try finding out for how many hours your SQL Server instance is running. But out there may be existing applications that have to be aware of the difference.

Exploring SQL Server Blockings and Timeouts
Jan 16th
Last Thursday I was giving a presentation about information collection and evaluation of SQL Server Blockings and Timeouts at the regional PASS chapter meeting in Munich.
You may download the presentation as well as the corresponding scripts here (German only).