Tuesday, October 26, 2010

Top 10 Mistakes When Building and Maintaining a Database

Building and maintain a SQL Server database environment takes a lot of work. There are many things to consider when you are designing, supporting and troubleshooting your environment. This article identifies a top ten list of mistakes, or things that sometimes are overlooked when supporting a database environment.


Wednesday, September 29, 2010

Partition offset and allocation unit size of a disk for SQL Server

SQL Server performance is dependent on the server resources available and disk performance is probably the most important resource.  To maximize disk performance for SQL Server, I've always been told that the drive's partition offset must be set to 32K and the allocation unit size set to 64K for partitions that hold data and 8K for partitions that hold logs.  How do I find out the allocation unit size and partition offset for my drives?.


Thursday, September 2, 2010

How Old Are Your Database Statistics?

Unlike fine wine, database statistics do not improve with age. I recently helped out with a client who was having issues with poor query performance on a SQL Server 2005 instance on very good hardware. After having them run my standard SQL Server 2005 Diagnostic Information queries, nothing glaringly obvious was jumping out at me. Sure, there were a couple of missing indexes that needed to be added, but overall query performance was still pretty bad. The server as a whole was not under obvious CPU, memory, or IO pressure.


Wednesday, July 7, 2010

Restoring Exchange Server 2010 using Windows Server Backup

In my last article we discussed how to benefit from the built-in windows server backup feature of Windows 2008 and 2008 R2 and perform healthy backups of your Microsoft Exchange databases for free, without the need for any 3rd party tool. Today, we are going to go over the restore process by looking at two different situations; the first one is when we have experienced a complete loss of one database, and the second is when we need to recover just a single item from a mailbox.


Monday, June 7, 2010

Backing up Exchange 2010 For Free

It's hardly surprising that many SysAdmins are willing to pay over the odds for sophisticated backup solutions which they don't necessarily need, just to make sure their data is safe ASAP. Thankfully, Antoine Khater is here to give you a short and sweet walkthrough on how to keep your Exchange 2010 Server backed up for free. And the best news? You've already got everything you need.


Thursday, June 3, 2010

High Performance Storage Systems for SQL Server

Rod Colledge turns his pessimistic mindset to storage systems, and describes the best way to configure the storage systems of SQL Servers for both performance and reliability. Even Rod gets a glint in his eye when he then goes on to describe the dazzling speed of solid-state storage, though he is quick to identify the risks.


Reliable Storage Systems for SQL Server

By validating the IO path before commissioning the production database system, and performing ongoing validation through page checksums and DBCC checks, you can hopefully avoid data corruption altogether, or at least nip it in the bud. If corruption occurs, then you have to take the right decisions fast to deal with it. Rod Colledge explains how a pessimistic mindset can be an advantage


Wednesday, May 19, 2010

Geocode Addresses in T-SQL

This article shows how you can "geocode" street address information natively in T-SQL with MS SQL 2005, and as a byproduct, how you can validate, normalize, and parse address information.
Note that this approach will work in SQL 2008 as well, though SQL 2008 provides geospatial types and functions that could be used in lieu of the numeric data type used here.
Geocoding is the process of converting a geographical address into latitude and longitude (GPS coordinates). Geocoding address information has a number of benefits:
  • Means to interoperate with web-based mapping services
  • Means to interoperate with GPS devices
  • Makes it possible to calculate distance between addresses
  • Makes geospatial analysis possible (i.e. identifying geographically similar addresses, etc.
  • Compact way to represent a geographical location
  • And more...

Monday, April 26, 2010

Map IP Address to a Geographical Location

On the Internet there is the concept of web site analytics that helps track all the visitors' activities and usage patterns. One of the dimensions to track is the geographical information of the visitors, which can be obtained by using the IP address information that is collected when a user lands on a Website. In this article, I will describe a simple process that enables your reporting system to display the geographical information of the visitors.

Friday, April 23, 2010

Help, my database is corrupt. Now what?

A corrupt database is probably one of most DBA's worst nightmares. It results in downtime, managers shouting and all other sorts of unpleasant things

Wednesday, April 21, 2010

Reporting Services Disaster Recovery

Many organizations now rely on their reporting solutions for day-to-day business as much as the underlying OLTP systems. For some organizations, being able to report on data in real time can be as important as the availability of their underlying OLTP systems. So like any important database solution, you need to plan on how to recover your reporting solution quickly and efficiently, to keep your business running smoothly. For most medium and small companies, that will mean using the tools available to you with SQL Standard Edition.

Wednesday, February 3, 2010

Managing Data Growth in SQL Server

'Help, my database ate my disk drives!'. Many DBAs spend most of their time dealing with variations of the problem of database processes consuming too much disk space. This happens because of errors such as incorrect configurations for recovery models, data growth for large objects and queries that overtax TempDB resources. Rodney describes, with some feeling, the errors that can lead to this sort of crisis for the working DBA, and their solution.

Eating SQL Server Installations for Breakfast

Here you will find wholesome SQL Server installations on the menu, complete with Express, Continental and Deluxe breakfast choices, depending on your application’s appetite. This is the article where your new SQL Server installation is completely yours, having not as yet been turned over to the general populace of developers or users. Enjoy it while you can: From the SQL Server Tacklebox

Friday, January 29, 2010

Laying out SQL Code

It is important to ensure that SQL code is laid out the best way for the team that has to use and maintain it. Before you work out how to enforce a standard, one has to work out what that standard should be for the application. So do you dive into detail or create an overall logic to the way it is done?

Friday, January 22, 2010

Uncovering Exchange 2010 Database Availability Groups (DAGs) (Part 2)

In this part of this multi-part series, I will provide the steps necessary in order to prepare two servers to be used in a two DAG member solution. Both Exchange 2010 servers are placed in the same Active Directory site in the same datacenter.

Uncovering Exchange 2010 Database Availability Groups (DAGs) (Part 1)

What an Exchange 2010 Database Availability Group (DAG) is all about and how this high availability feature may fit into your Exchange 2010 organization. Providing also step by step instructions on how to deploy DAG and other best practice recommendations.

Free Tools for the SQL Server DBA Part 2

Welcome to the second edition of "Free Tools for the SQL Server DBA". It has been a while since the original article was published in May 2007. Since that time, the number of free tools for SQL Server has continued to grow even though some have disappeared. This article covers tools not included in the original article.

All tools listed are free with no known expiration date. In order to download them, some sites will require you to register which might result in a phone call or e-mail from the vendor. Some tools are free versions of vendor's purchasable software with features disabled. While others tools are on par or better than what you can purchase.


Friday, January 15, 2010

Database Indexing Development Lifecycle...Say What?

This is the first article of a series where I’ll be exploring Indexing Guidelines. Having appropriate indexes on your database is critical in making sure your application is retrieving records quickly. However, having too many indexes can also slow down your application. In this series of articles, I hope to help you understand how to determine what columns you should consider for indexes, and how those columns should be used in indexes to optimize performance. In this first article, I will be discussing the indexing development lifecycle.

Monday, January 4, 2010

Using SSIS to zip files and email the zipped files

This article makes use of global variables throughout and shows how they can be used in SSIS, you can adapt these to make a package that can be made as flexible as you want. The package described here zips all files in a folder to a single archive zip file.

Pre Check List for 64 BIT SQL Server 2008 Cluster Installation

The purpose of this document is to help in the installation of SQL Server 2008 with tips and guidelines that I have found to work well in my environment. During installation I found missing information that was important for the successful installation of SQL Server 2008 (64 bit) on a Windows 2008 (64 bit) operating system in a cluster.