July 2004 - Posts

Support for SQL 2005 Beta 2

The SQL team at Microsoft have taken an interesting approach to suppporting SQL 2005 Beta 2 testers.

They have publically published the login credentials to the privatenews.microsoft.com servers for the Sql 2005 Beta 2 groups.

This is really great as now eveyone can ask questions, without worrying about Beta ID's and NDA's. This will also help to keep the regular public newsgroups free(ish) of Beta 2 questions, enabling the MVP's to focus their attention on day-to-day critical problems that users may have with SQL 7 and 2000.

The page is here where you can get the information.

Well done to the team!

Posted by Mike Epprecht | with no comments
Filed under:

Set Microsoft on Fire: Linspire

Very good promo using a parody of the Doors “Light my Fire“:

http://images.linspire.com/RunLinspireSong/RunLinspire.swf

Fair marketing IMHO.

Posted by Mike Epprecht | 2 comment(s)
Filed under:

SQL Server 2005 Beta 2 is on MSDN

Microsoft just released SQL Server 2005 Beta 2 (Yukon) to the MSDN Universal Subscriber Downloads.

This Beta is limited distribution (MSDN Universal and Partners) and Beta 3 will be released for wider distribution.

Posted by Mike Epprecht | 1 comment(s)
Filed under:

Why is my SQL Server Performance so bad?

Basically, with SQL Server 2000, there are only 2 things that can cause bad performance.

  • Hardware
  • Inefficient/inappropriate T-SQL code.

T-SQL code is relatively easy to debug and analyze (SQL Trace/Profiler, Query Analyzer's Show Execution Plan etc), but when you are fighting your hardware/OS guys, trying to prove that the performance bottleneck is somewhere on the server, or even worse, your data is getting corrupted, things do get a lot trickier.

Since we are talking about a relational database, the biggest factors hardware related are Disk and RAM. The more RAM, the more SQL Server can cache data, the less it has to ask the relatively slow disk subsystem for data. But, ultimately, the Disk Subsystem is the determining factor. If it is slow, having 4 x 3.2Ghz processors wait for it, is not helping the air conditioner in your server room to do less work, and your sweating does not help either. Sometimes, instead of finding bad performance, you fine data corruption. Yes, you are on UPS, the controller has battery backup and you don't just pull the power plug on the server to shut it down, but you still get corrupt log or data files.

Microsoft has a tool to help you stress the IO subsystem, in a manner similar to how a heavily loaded SQL Server would operate. SQLIOStress. This tool really bashes the IO subsystem and will expose issues related to the controller and disks. You can get it from Microsoft here on Microsoft Knowledge Base Article 231619.

Then there is SQLIO, the Disk Subsystem Benchmark Tool. It is there to help you determine the capabilities of your subsystem (or have a contest with your friends on who has the fastest disk subsystem). Get if from Microsoft Downloads here. It will tell you in a simple manner what the throughput is of your subsystem.

Both tools are supplied by Microsoft, but are not supported by PSS. Use at own risk.

Just being able to prove that the expected throughput is not what it was promised by the hardware vendor or the OS guys goes a long way to help you fend off those "Why is SQL server so slow?" questions.

On any new system, I run both tools, firstly to find and expose any hardware problems, and secondly to put my mind to rest that what is there, is actually going to run as expected. Removing the Disk Subsystem for the list of potential problems does make it easier to sort out those 3am server room sessions where the box needs to be up by 6am and you can't tell why you are continuously getting corrupt data.

Posted by Mike Epprecht | 3 comment(s)
Filed under:

Windows Server Clustering - Microsoft Support Policy

If you run a Windows server cluster, or want to, have a look at the following 2 Microsoft KB articles. They lay it out quite clearly what Microsoft will and will not support:

  • 309395 - The Microsoft support policy for server clusters, the Hardware Compatibility List, and the Windows Server Catalog
  • 327518 - The Microsoft support policy for a SQL Server failover cluster

 

 

 

Posted by Mike Epprecht | with no comments
Filed under:

BINARY_CHECKSUM function

When having to compare 2 rows (usually same table structure and with the same primary key), the easiest way is to use the SQL function BINARY_CHECKSUM

But, after quite a few discussions on the various SQL list servers, there seems to be a very small window of opportunity for the function to return the same checksum and it may occur frequently. The wider the row and the smaller the difference between them can possibly result in this condition. But that is the same for any type of checksum.

You just have to see if it's precision fits your requirement. Test, Test, Test and then Test again to see if it is good enough for you to use in production.

As a work-around, you could possibly, row by row, compare one column at a time, and not just a subset expression or even the whole row.

It is a very useful function, but just be aware of it's limitations.

Posted by Mike Epprecht | with no comments
Filed under:

Webcast - Indexes from Every Angle

I just listened to a great MSDN webcast by Kimberly L. Tripp on “Indexes from Every Angle - Index Defragmentation Best Practices”.

If you think you know everything about performance tuning and indexes, think again. Follow the links from her site to the archive: http://www.sqlskills.com  If you get a chance, review the other webcast from 11 June 2004 too!

Look at http://msdn.microsoft.com/training/webcasts/#SQL to find other upcoming SQL Server webcasts.

 

Posted by Mike Epprecht | with no comments
Filed under:

Highest SQL 2000 hotfix available without calling PSS

Currently, SQL 2000, build 8.00.0878 is the highest downloadable build you can find on Microsoft.com. Any higher builds require a call to PSS.

It was released under KB article 810185 (“You must install the SQL Server 2000 update that KB article 831950 describes to run BizTalk Server 2004“) and is a supported hotfix due to the BizTalk 2004 dependency on it.

Database Components (SELECT @@VERSION):

  • 8.00.0818 is the SP3/SP3a security rollup (MS03-031)
  • 8.00.0760 is SP3/SP3a
  • 8.00.0534 is SP2
  • 8.00.0384 is SP1
  • 8.00.0194 is SQL 2000 RTM

Like normal, make a good backup of your databases and installation before you apply a SP or a hotfix.

Posted by Mike Epprecht | 1 comment(s)
Filed under:

Me on the Net

I am listed on the INETA speaker's bureau and the MVP public profiles

I hope to one day have enough hits on Google Web and Google Groups for them to make me a permanent link. :) LOL, if only..........

Posted by Mike Epprecht | with no comments

The MVP Program

Microsoft has an award program that recognizes the outstanding members of the peer-to-peer community for their participation and continuous help: Microsoft Most Valuable Professional (MVP) Program.

On a continuous basis, Microsoft and other MVP's are monitoring newsgroups, list servers, user groups and conferences for people who really contribute and assist their fellow peers. Some MVP's are in the IT Industry, some are doctors and firemen, but they all have one thing in common: Assist their fellow Microsoft product users. MVP's are awarded for their past participation and for a specific Microsoft product for a time period of 1 year.

The motto of the MVP program is:

  • Recognized: Microsoft MVPs are acknowledged by peers and also by Microsoft for their active participation in Microsoft technical communities around the globe.
  • Credible: Microsoft MVPs have demonstrated practical expertise providing the highest quality information and content.
  • Accessible: Microsoft MVPs are active technical community leaders sharing their experience with peers.

I was awarded my MVP status for SQL Server on 1 October 2003.

Why?

We don't know the exact criteria that Microsoft uses, but I must have done something (or a lot) right over the last few years.

Well, a bit of history on me:

I started to use Microsoft SQL Server when the first spilt occurred with Sybase in 1993/1994. Microsoft released the product as v4.21a for the NT platform. This was running on Windows NT 3.1. Over the years I was a DBA and Development DBA and I felt that the South African SQL community was not interacting with each other.

I started the Microsoft SQL Server User Group South Africa in 1999, together with Shaun Tinline-Jones and Koos Bester. During this time, we setup a list server and held monthly meetings in Johannesburg for users to interact with each other and ask questions. Then in 2001, I assisted Patrick Collins to start the Microsoft Visual Basic User Group, later re-named Microsoft Developer User Group. Both user groups grew and had very active members. Later, SADeveloper.NET was started and the user groups were put in one structure to server the wider audience.

I am active on List Servers; Usenet News Groups; Microsoft Public and Private Newsgroups; presenting at conferences and meetings; and day to day 1:1 user assistance.

SQL is my life and passion......so talking about it all day long is fun for me.

Posted by Mike Epprecht | with no comments
Filed under:

My Blog is up!

So, after a bit of deliberating of how to get a Blog up, I remembered Susan Bradley (SBS Guru and MVP) has a great Blog hosting site on http://msmvps.com, exclusive to MVP's.

Now you will have to put up with my comments, experiences and stresses when I work with Microsoft SQL 7, 2000 and upcoming 2005 (aka Yukon).

To find out who I am, read one of my future posts.....