Thursday, July 05, 2007

 

SQL Server 2005 BPA (Best Practices Analyzer) Is Here

I have to say - for all the bugs and problems running SQL 2005 that I've experienced (and that have frustrated me and you), Microsoft has just been amazing about putting these helpful tools together for the system and making them available for free.I remember back 6-7 years ago when we had no tools or any special downloads and we had to write the tools ourselves (which led to lucrative consulting projects though) but today, I can save the time and just help the client with the built-in tools from MSFT.

The SQL Server 2005 Best Practices Analyzer (July 2007 edition) is the SQL 2005 version of the BPA (Best Practices Analyzer). Microsoft, IIRC, originally started using the BPAs with SQL Server back in SQL 2000 and has since expanded them to the ASP.NET BPA, the Exchange BPA and more (click here for a full list).

Links:

Thoughts on Running the SQL 2005 BPA:

This isn't just an extension of the old SQL 2000 BPA; this new implementation takes full advantage of SQL Server 2005's features by scanning for (and making suggestions for correcting/amending) SSIS implementations and more. On my machine (which has SQL 2005, SSIS and SSRS), it made no suggestions for improving SSRS but it did make a few SSIS-based suggestions. Check out the screenshot below for an example of the report listing:

There are a few interesting bits:

  1. "Unexpected System Failures on Host" - I don't really remember this happening but this is MSFT's way of telling me that my server has had an expected shutdown. If you read the "Tell me more about this setting", it says I should move my SQL Server to a more stable system lol
  2. "Authentication Mode Violation" - This is a fear-mongering way of saying that MSFT thinks I should be running my SQL Server in Windows Authentication mode instead of Mixed Mode...
  3. "SQL Login Password Policy Violation by login [sa]" - I don't have the password policy option checked for my sa account...
  4. "Sysdtslog90 Table in [msdb]" - See? This is what I mean when I say that the new BPA is integrated tightly with SSIS. If you read the docs, MSFT says, "Integration Services package logging can generate a large volume of verbose log entries. You may experience decreased performance if you log to a system database such as master or msdb. A good practice is to create a separate database for Integration Services logging."

One thing: there is no legend regarding the icons on the Report page. Does a blue circle with an exclamation generally imply danger? No - but it's the way the BPA shows you a recommended Best Practice. The yellow triangle with the exclamation is pretty standard - it's a Warning - so you will want to review anything that comes back with a yellow exclamation. The BPA uses Exception-Based reporting so you won't see a nice green circle with a checkmark if you've done something right; you only get notified if you've screwed up. Here's the legend of icons in the report as best I can tell (based on the icons I saw in my reports):

I looked in the help file for a full listing of the icons but saw nothing. There's a page called "Types of Output Information" that lists all of the options but no icons. Here's the list: 

Also included in the download is a .chm (a help file) that is packed with great suggestions, explanations of the settings, and good insider info about SQL Server 2005. 

Recommendations For Using the SQL Server 2005 Best Practices Analyzer:

Do:

Don't:

System Requirements:

Links:


AddThis Social Bookmark Button

Tuesday, July 03, 2007

 

SQL DMVStats - Cool Free Tool for SQL 2005

Like Reporting Services? Like SQL Server? Want to view a whole bunch of your SQL Server performance data with Reporting Services-style reports? Then you'll want to check out SQL DMVStats, a 1.0-generation open source project up on CodePlex that was just released a few days ago by Tom Davidson & Sanjay Mishra from the SQL Server Customer Advisory Best Practices Team.

I've been playing with it for about a day and I dig it. It reminds me of the SQL Server 2005 Performance Dashboard reports that I'm so fond of (link here) but there are some signficant differences. For one, the Performance Dashboard reports is more of a pull-based reporting; i.e., you must request the report and then you can view the data afterwards. With the SQL DMVStats reporting, they use a series of jobs to track system performance and a database to store this information therefore trend analysis and time-based analysis are easy to accomplish. I think of the Performance Dashboard reports as for ad-hoc reporting and I might think of the SQL DMVStats as trend analysis; sort of along the lines of the SQL Server Health and History tool (the SQLH2).

So what can you use SQL DMVStats for? Well, here's the introduction text:
Microsoft SQL Server 2005 provides Dynamic Management Views (DMVs) to expose valuable information that you can use for performance analysis. DMVstats 1.0 is an application can collect, analyze and report on SQL Server 2005 DMV performance data. DMVstats does not support Microsoft SQL Server 2000 and earlier versions.
In the docs, it is listed as a "Performance DataWarehouse"

You do have to be aware that:
  1. This is first generation stuff here so, if you install it and it crashes your machine, tough cookies...
  2. The default sample rate is 20 seconds therefore there is some overhead associated with running it.
  3. The default snapshot interval is every five minutes
I could write out much more here but really I'd be just reproducing the really, really good documentation they included. Go ahead - check it out (on a test server): SQL DMVStats. Tip for first time CodePlex users: to download the file, you need to visit a particular release's page. Look at the top right corner of the page for version 1.0...

BTW, I've had a few issues here and there that I haven't worked out (such as "@object_id is not a parameter for procedure sp_GetDatabaseObjectIndexes." when I'm trying to view the index info) but I suspect it's due to my installing and playing rather than RTFM'ing!

Thanks for the cool tool :)

AddThis Social Bookmark Button

This page is powered by Blogger. Isn't yours?