Amazingly Useful SQL Server Articles on SQLPerformance.com

Me and Aaron Bertrand, SQL Sentry flagbearers. One of the things we've been working on at SQL Sentry is building up institutional knowledge for the SQL Server community. There are three main ways that we're doing that on-line: Hard-core tech articles on SQLPerformance.com, edited by long-time SQL Server MVP Aaron Bertrand ( b | t ). Helping tune tough SQL Server transactions on Answers.SQLPerformance.com for free. Streaming videos at SQLSentry.TV. In addition, our monthly eNews newsletter keeps you up to date on all the latest happenings on all of these websites. Please subscribe! … [Read more...]

Learn More About SQL Server IO and Query Tuning in These Webcasts

I'm doing two new webcasts next week on Wednesday, December 19th, one in the morning and the other after lunch.   SSDs are a Game Changer for SQL Server Storage No, don't let the title mislead you.  This session is not exclusively about SSDs.  But this is my first session on IO and storage tuning that emphasizes SSDs over hard disks.  As Bob Dylan said "Times, they are a'changin'".  This session on Wednesday, December 19th at 11:30 AM EST, sponsored by Astute Networks, takes you through all of the basics of storage and IO tuning, regardless of the underlying storage technology.  I'll … [Read more...]

Flexibility When Waiting on Locks

Speaking at a recent SQL Saturday, an attendee in one of my sessions wanted to know how they could more flexibly react to locks on their application than to wait for blocks to occur and then kill the SPID at the head of the blocking chain.  They were also interested in some alternatives to using the  SQL Server syntax like the WITH (NOLOCK) hint, since that might have unintended consequences due to allowing reads on uncommitted data. One alternative I suggested is the SET LOCK_TIMEOUT n statement.  Since most of the attendees hadn't heard of this statement, I figured it'd make a good blog … [Read more...]

Dev Advice: Make a Tiny Dev Database Act Like a HUGE Prod Database

Here's an evergreen question.  It's a question that never completely goes away.  But lately, I've been getting it a few times per week.  So I thought it's time to readdress the question, which usually takes some form of the following: I can't really do effective development on my little dev laptop because our production SQL Server database is 15 gazillionbytes, way too big for my workstation.  What's a uber-nerd to do?  Well, maybe they didn't use the word "uber-nerd".  But you get my drift, right?  The production database is really, really big - unmanageably big for keeping a local copy.  … [Read more...]

Everybody Needs a Test Harness

When you're developing new Transact-SQL code or modifying some existing code, do you just launch directly into programming? I know that I did just that, for years.  It wasn't until I was trying to performance tune some existing code that I realized I hadn't actually taken caching of data and execution plans into account.  So all those modified stored procedures that I was so proud of might not actually be faster than the first generation of procedures because I hadn't checked to ensure that I was testing cached programs against uncached programs (and, by extension, the data used by those … [Read more...]

SQL Server Migration Roll-Up

There are so many great tools out there for data professionals using Microsoft SQL Server.  I really like to see all of these great tools made free to the public.  On the other hand, I'm bummed that the tools are cast about in a very decentralized fashion. If you haven't done migrations before, you might want to start with these good white papers first. Here are a hand full of cool migration tools worth mentioning: Microsoft SQL Server Migration Assistant (SSMA) for MySQL: Migrate from MySQL to SQL Azure or SQL Server with ease.  Plus, here are a few related Knowledge Base (KB) … [Read more...]

Wednesday Quest: Exciting New Community for Users of Toad for SQL Server

Join the Toad for SQL Server Community! I was just bragging about how Toad for SQL Server keeps getting better.  In that post, I also pointed out a lot of great resources you can put to work immediately on improving your skills with this great tool.  (Incidentally, there's a freeware version without all of the features, but it's still quite useful.  And you can always use the beta product, if you want all of the features and many new features that are undergoing community testing.) One of the reasons that Toad is so good is that it's always been a community-driven product.  Back when I … [Read more...]

Back in Atlanta! Wed, Feb 9 2011

I always enjoy spending time with my friends from Atlanta, as well as meeting folks and making new friends. If you live in the Atlanta area, I hope you'll join me on the evening of Wednesday, February 9th, 2011.  Details are at the Atlanta SQL Server user group website. It's common knowledge that I have a terrible memory for many things.  However, one of the few things that my memory is usually really good at is remember names & faces (and remembering stories, but that is another story as well). It's only in the last couple years that I've gotten to know Atlanta-area folks like Aaron … [Read more...]

Video: Maximize SQL Server Performance with SQL Tuning

This presentation is a bit old, but largely still applicable.  It will help you understand Microsoft tuning techniques. It will teach tips and tricks for making queries perform better, and how to use tools to tune SQL. Posted March 27, 2007. … [Read more...]

DBTA: The Future of Coding for SQL Server, Part 2

In my last column (published in the February e-edition and the March print edition of DBTA), I reviewed the overall coding landscape for SQL Server with special focus on LINQ to SQL, a new technology introduced by Microsoft in late 2008. LINQ to SQL promised to make developers' lives much easier by allowing them to focus on writing programs in their favorite Visual Studio language and letting LINQ to SQL write all the Transact-SQL code. The problem is that LINQ to SQL writes very bad Transact-SQL code. [READ MORE] … [Read more...]