Take the 2-minute tour ×
Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. It's 100% free, no registration required.

How can I profile a SQL Server 2008 database to see code that's being executed on a particular database? I remember using the SQL Server profiler, but I don't see it in SQL Server Management Studio after downloading SQL Server 2008 R2 Express. Where can I download that tool and install it? Do I need the full version of SQL Server 2008 in order to see this option?

share|improve this question

6 Answers 6

up vote 5 down vote accepted

SQL Profiler does not come with SQL Server Express. For 2008 R2, you can get it with the installation media for datacenter, Enterprise, Standard, Web, Developer, or Workgroup licenses.

If you have the installation media, you can get Profiler that way. Otherwise, Developer Edition is available for $50.

There are some other tools available, and you could even create your own server-side traces (for example) without Profiler. Then, use a tool like Qure Workload Analyzer to review the trace files. With 2008 R2, you could in addition use Extended Events to track activity. The advantage is that both of these are less of a performance hit than running Profiler would be.

Finally, if you're looking at a point-in-time solution and can install procedures, Adam Machanic's sp_whoisactive could be something to look into.

share|improve this answer

It's not included with Express Edition, but the other (non-free) editions have it, including Developer Edition, which is about $60 (USD) list. You may run into some sticky licensing situations, however, which I can't address with authority.

share|improve this answer

Even though SQL Profiler does not come with SQL Server Express, you can still create server-side traces using T-SQL.

Check out sp_trace_create and sp_trace_setevent. The page for sp_trace_setevent also has a list of traceable event numbers.

Finally, if you need a place to get started, this link may serve as a good jumping-off point.

share|improve this answer
    
how can I create a server side trace? –  MacGyver Nov 5 '12 at 18:43
1  
@datagod - it would be helpful if you could provide some details beyond "its possible". –  Max Vernon Nov 5 '12 at 19:49

There is a free, open source tool called ExpressProfiler - https://expressprofiler.codeplex.com/ Very convenient tool. In addition to SQL Express databases, it even supports a localDB.

share|improve this answer

If looking for a UI that will get traces in real-time, the ExpressProfiler is good. But it's a bit simple, and not very configurable.

This is a nice alternative, very configurable and I use use it all the time now. It's called Sql ExpressTRace and this link is to an article that lets you download the compiled UI and the code too: http://www.codeproject.com/Articles/784905/Real-time-Tracing-With-SQL-Server-Express

share|improve this answer

I can't test it because I don't have Express installed here, but can't you use Profiler on SSMS 2012 on an express edition? SSMS 2012 is available to download here free, I can't think of any reason why anyone using SQL Server shouldn't be using it.

Can someone with an Express Edition installed verify?

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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