<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>StraightPath Consulting&#039;s SQL Server Blog &#187; DBA</title>
	<atom:link href="http://www.straightpathsql.com/archives/category/dba/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.straightpathsql.com</link>
	<description>Mike Walsh&#039;s Thoughts on SQL Server, Professional Development and Life</description>
	<lastBuildDate>Thu, 29 Jul 2010 12:11:46 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>SQL Server Licensing Or Tax Forms?</title>
		<link>http://www.straightpathsql.com/archives/2010/07/sql-server-licensing-or-tax-forms/</link>
		<comments>http://www.straightpathsql.com/archives/2010/07/sql-server-licensing-or-tax-forms/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 13:24:55 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[InstallTips]]></category>
		<category><![CDATA[Pet Peeve]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[database administration]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[licensing]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=847</guid>
		<description><![CDATA[

Which would you rather do, wade through the nuances of SQL Server licensing or a typical tax form?  Some days, I think the latter would be a welcome respite. Let&#8217;s just put it this way, I bet Brent Ozar (BrentO on twitter) is happy that licensing wasn&#8217;t the biggest part of the MCM grade. (I [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F07%252Fsql-server-licensing-or-tax-forms%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fa4wKU9%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22SQL%20Server%20Licensing%20Or%20Tax%20Forms%3F%20%23%22%20%7D);"></div>
<p>Which would you rather do, wade through the nuances of SQL Server licensing or a typical tax form?  Some days, I think the latter would be a welcome respite. Let&#8217;s just put it this way, I bet <a href="http://www.brentozar.com" target="_blank">Brent Ozar</a> (<a href="http://twitter.com/brento">BrentO</a> on twitter) is happy that licensing wasn&#8217;t the biggest part of the MCM grade. (I don&#8217;t know this, I just presume it because people actually pass the MCM every once in a while).</p>
<h2>Common SQL Server Licensing Myths</p>
<p><div id="attachment_862" class="wp-caption alignright" style="width: 310px"><a href="http://www.flickr.com/photos/uber-tuber/2917811282/#/"><img class="size-medium wp-image-862" title="2917811282_70e20cd396_z" src="http://www.straightpathsql.com/wp-content/uploads/2010/07/2917811282_70e20cd396_z-300x224.jpg" alt="People Lost in Corn Maze" width="300" height="224" /></a><p class="wp-caption-text">The people in this maze might be better off than us.</p></div></h2>
<p>I am going to talk about some of the more common myths I&#8217;ve encountered with licensing throughout my career and consulting. Microsoft has some decent SQL Server licensing resources including some PDFs (some short and some nearing legislation size with flowcharts abound). This <a href="http://www.google.com/url?sa=t&amp;source=web&amp;cd=1&amp;ved=0CBUQFjAA&amp;url=http%3A%2F%2Fdownload.microsoft.com%2Fdownload%2F2%2F7%2F0%2F270B6380-8B38-4268-8AD0-F480A139AB19%2FSQL2008R2_LicensingQuickReference-updated.pdf&amp;ei=NRtOTOSVOYyBnweR_8jYCw&amp;usg=AFQjCNGAb1R0gGejrLdbU_mnKcOJRNcuJQ" target="_blank">quick guide</a> is a good start to look at. Which brings me to a disclaimer:</p>
<p><strong>This blog post does not replace your own research and understanding of licensing guidelines from Microsoft.  The thoughts presented here are my own and represent my views of Microsoft licensing guidelines and my interpretations thereof. My perspective has the potential to be wrong (I&#8217;m a husband, so I&#8217;m likely wrong, come to think of it <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  ) and could become outdated with future changes. Check with Microsoft and your licensing representative to make any final decisions. </strong></p>
<p>On to the myths I encounter&#8230;</p>
<h2>You Need Enterprise</h2>
<p>Look at the edition feature matrix for your version (<a href="http://www.microsoft.com/sqlserver/2008/en/us/editions-compare.aspx" target="_blank">2008</a>, <a href="http://msdn.microsoft.com/en-us/library/cc645993.aspx" target="_blank">2008 R2</a>, <a href="http://www.microsoft.com/sqlserver/2005/en/us/compare-features.aspx" target="_blank">2005</a>) and see what you need and anticipate needing &#8211; it can save you around $15k + per CPU to go with Standard over Enterprise. I have commonly bumped into people believing that they need enterprise licenses when they don&#8217;t when it comes to things like:</p>
<ul>
<li>Log Shipping (Standard is fine)</li>
<li>Clustering (You can have a single instance two node cluster on Standard)</li>
<li>Mirroring (Some types are allowed in Standard)</li>
</ul>
<p>In fact, this post was inspired recently when I was able to see a project at a company to roll out Enterprise Edition simply because of Log Shipping. No other enterprise features needed. This company had great pricing on Standard and I was able to save them almost $60,000 in Enterprise licenses they didn&#8217;t need. <strong>Wait. There&#8217;s more! Act now and you can save even more because another myth sounds like this:<br />
</strong></p>
<h2>You Need To License Your Mirrored Copy Also</h2>
<p>In most situations (yours may be different, double check), a DR standby (For mirroring or log shipping) doesn&#8217;t need to be licensed by default. Now there are certain triggers (pardon me) that will hit you with a license cost (Being failed over to it for more than 30 days or reporting off of a snapshot of the mirror, for a couple examples) but by default, many simple options don&#8217;t. This same company had an Enterprise License purchase (single CPU) for the fail over site. Another $19,000 saved with no standard license even needed because that instance can sit there &#8220;unlicensed&#8221;.</p>
<h2>I Can Put SSAS, SSRS and the DB Engine anywhere&#8230;</h2>
<p>You can. And, as a best practice in busier environments I&#8217;d say you should. But you can&#8217;t do it for nothing. You can put them all on the same box and they will be licensed as though you just had one (under most circumstances). The moment you split them out (again, generally a best practice for performance) you must license each component separately. While I&#8217;ve saved some companies money, here I&#8217;ve cost some money&#8230; Sorry. I don&#8217;t like it either but it is what it is.</p>
<h2>Multiple Instances Still Means Multiple Licenses</h2>
<p>I hate typing this because just as soon as I do, I am sure some pointy headed boss someplace will say, let&#8217;s consolidate every instance onto one machine! Don&#8217;t do that. But this myth isn&#8217;t true &#8211; you pay by the CPU by the machine. If you have two instances on one machine each using 2 CPUs, you only need one 2 CPU license. Add another instance to it? Same thing, no new license, you pay by the machine not the instance. This is great and can really help save some license expenses at smaller shops but just do so carefully as I wrote when I first drafted this SQLServerPedia <a href="http://sqlserverpedia.com/wiki/Multiple_Database_Instances" target="_blank">wiki article on multiple instance decision making. </a></p>
<h2>SQL Server Licenses Are By Core, Like Oracle</h2>
<p>Or at least like Oracle was last time I checked&#8230; SQL Server (today.. I don&#8217;t know of anything changing, but you never know) licenses by the socket. By the actual die that goes into the socket. Not by the core or thread. So you can have a Quad core proc with hyperthreading that looks like 8 CPUs in perfmon but you are paying for a single CPU license. This is good to know. Might make that hardware upgrade more worthwhile. Who knows how long this will last and, for all I know, maybe it is gone by the time you read this, so double check yourself.</p>
<h2>Virtual Server Licensing Works Just Like Physical</h2>
<p>I&#8217;m not going to say anything except to say this isn&#8217;t necessarily true. There are all sorts of scenarios and differences depending on if you are using standard or enterprise. The IRS has a hotline (800-829-1040). <a href="http://www.microsoft.com/licensing/contact-us.aspx" target="_blank">So does Microsoft</a>, if you aren&#8217;t sure it may be worth a call or e-mail.</p>
<h2>Developer Edition Works for All Developers</h2>
<p>Well that may be true most of the time. Your developers could probably use developer edition but keep a few things in mind: 1.) Did you pay for it? Or is it just a download everyone shares? If you are covered by MSDN (For each developer who touches the instance) or some sort of enterprise agreement then you may be fine. If you paid for the product and a proper license you are fine for the intended use in the agreement. If not, you aren&#8217;t. <strong>But also &#8211; consider this: What is production going to be?</strong> If your production environment is standard, do you necessarily want the product developed and tested on developer edition, which is Enterprise Edition by features, Developer edition only be price tag and EULA?? There may be a reason (especially if you have MSDN licenses for each developer, a good investment typically) to make sure an app is developed and tested in something other than Enterprise. Consider the end goal and end edition. It would stink to see Dev and QA using Developer and relying on some enterprise feature that never failed a test only to find a deploy gone wild.</p>
<h2>Licensing, Just Like SQL Server, Is Set-It-And-Forget-It</h2>
<p>No. No to both. Depending on your agreement with Microsoft the day may come when they come to do a true up of your environment. They will discover your SQL instances with you and verify you are using what you purchased. If you haven&#8217;t you&#8217;ll be buying more licenses and you are in violation of laws and software agreements. You could face fines as a company or a individual, potentially. An answer? Do your own True Ups. Awhile ago I blogged about <a href="http://www.straightpathsql.com/archives/2009/02/what-sql-instances-are-installed-on-my-network/" target="_blank">using the Microsoft Assessment and Planning Toolkit (MAP) to discover your SQL instances</a>. The report it spits out shows you all sorts of great details (server name, edition, version, CPU count, etc). Do your own true up, no reason you can&#8217;t. Are you in line? If not fix it by adding licenses or consolidating and saving the company hard earned cash (&#8220;Hey, boss, I just want 1%&#8230;&#8221;)</p>
<h2>Summing It Up</h2>
<p>A simple look at a few of the more common myths I bump into around licensing. They can all be summed up with the same advice, <strong>do your homework, understand the license agreements with factual information (not someones recollection or interpretation) and always double check. </strong>Even if the information comes from a trusted vendor (you know<a href="http://www.straightpathsql.com/archives/2010/07/hey-software-vendors-get-a-clue/" target="_blank"> how I feel about that</a>), you could be breaking the law or throwing away company money. Neither are great career advancement moves.</p>
<p><strong>What about you? </strong>Do you have a licensing horror story? A tip for someone else out here. Leave it in the comments or blog about it and let us know when your post goes up, I&#8217;ll be more than happy to link to any tips to help folks avoid making a mistake up front.</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/07/sql-server-licensing-or-tax-forms/feed/</wfw:commentRss>
		<slash:comments>10</slash:comments>
		</item>
		<item>
		<title>Why Hire A DBA?</title>
		<link>http://www.straightpathsql.com/archives/2010/05/why-hire-a-dba/</link>
		<comments>http://www.straightpathsql.com/archives/2010/05/why-hire-a-dba/#comments</comments>
		<pubDate>Mon, 24 May 2010 15:26:56 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Troubleshooting]]></category>
		<category><![CDATA[Database Administrator]]></category>
		<category><![CDATA[You Need to hire a DBA]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=596</guid>
		<description><![CDATA[

Why on earth would anyone hire a Database Administrator? Your Windows Admin can install SQL Server with just a few clicks &#8211; It only takes a few more clicks to put a database there and grant permissions. Most of your vendors have simple setup scripts including database deploys&#8230; Why spend all that money on a [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F05%252Fwhy-hire-a-dba%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fdvm3eA%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Why%20Hire%20A%20DBA%3F%20%23%22%20%7D);"></div>
<p>Why on earth would anyone hire a Database Administrator? Your Windows Admin can install SQL Server with just a few clicks &#8211; It only takes a few more clicks to put a database there and grant permissions. Most of your vendors have simple setup scripts including database deploys&#8230; Why spend all that money on a DBA&#8217;s salary?</p>
<p><strong>I&#8217;m glad you asked, I can think of a few reasons&#8230;</strong></p>
<h2><strong>DBAs <span style="text-decoration: line-through;">Are Mean </span>Care About Your Data</strong></p>
<p class="mceTemp">
<p><strong> </strong></h2>
<p>Your developers hopefully care about the data. Your vendors <span style="text-decoration: line-through;">care about their bottom line</span> may even care about your</p>
<div id="attachment_601" class="wp-caption alignright" style="width: 310px"><a href="http://www.straightpathsql.com/wp-content/uploads/2010/05/truck-side.jpg"><img class="size-medium wp-image-601 " title="truck-side" src="http://www.straightpathsql.com/wp-content/uploads/2010/05/truck-side-300x138.jpg" alt="Absolute Data Destruction" width="300" height="138" /></a><p class="wp-caption-text">I&#39;m sure they are great at their intended process but do you hire your developers from them? You might need a DBA <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p></div>
<p>data as well.  Your system administrators like things to run smoothly also; no one likes a failure.  Your database administrators, however, <strong>have a vested interest</strong> in keeping your data clean and healthy. A good DBA will say &#8220;no&#8221; quite often (or, more accurately, &#8220;not yet&#8221;; &#8220;not deployed like that&#8221; or &#8220;no until security is cleaned up&#8221;) if something is being done without concern for security or performance best practices in mind.</p>
<p>Sure we can come across as tough sometimes but when you stop and ask why, it is usually because we care about the data. Maybe it&#8217;s not so altruistic and we just don&#8217;t like being woken up after hours. Either way, we are going to do all we can to fight silliness at every stage of a database&#8217;s life.</p>
<p>Sometimes it is appreciated and understood. A development manager at one point in my career sent me a note around review time that included this statement, &#8220;Our developers are very appreciative that, while you can be one tough and principled SOB, you are usually right in the end!!&#8221; That isn&#8217;t to gloat, it&#8217;s to say that a DBA who cares to do the job right and wants things right the first time can make a difference in the long run.</p>
<p><strong>So Reason 1: A DBA cares about the database. </strong>It&#8217;s a myopic concern. Yes we care about the other facets of an application but it all stems from our desire to make the databases be all they can be. The other roles? They have their primary focus on something else (as they should!)</p>
<h2>DBAs Like Best Practices</h2>
<p>I&#8217;m talking about experienced and effective DBAs here. What I mean by the heading is that a database administrator knows what is beneath the <a href="http://www.straightpathsql.com/archives/tag/installation/" target="_blank">set-it-and-forget-it installation options</a> and deployment steps. We read books like <a href="http://www.amazon.com/gp/product/0470484284?ie=UTF8&amp;tag=wwwstraightpa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0470484284" target="_blank">Professional SQL Server 2008: Internals And Troubleshooting</a> (some of us even read them on personal time!). We study up on the database engine we support. We want to first understand why a best practice exists and then implement the ones that make sense for our organization. We aren&#8217;t going to accept defaults, we aren&#8217;t going to ignore <a href="http://www.straightpathsql.com/archives/2009/01/empirical-evidence/" target="_blank">empirical evidence</a> and try the<a href="http://sqlmyway.wordpress.com/2010/05/10/google-and-suspect-databases/" target="_blank"> first thing that a search engine shows us in production</a> (hopefully). We may not just accept a hand me down server for that huge production ERP deployment. We might discuss SAN optimization with the storage team. When we look at a backup solution for the enterprise we will ask questions that are relevant to SQL Server and the recovery needs we support. We won&#8217;t let a vendor do something dumb without a lot of whining and attempts to correct.</p>
<p><strong>Reason 2: A DBA cares to do the right job the first time. </strong>Again, you can even let it boil down to the self serving desire to not let the database be the cause for blame of a production outage. I don&#8217;t care, I&#8217;m still going to make sure that the database environment I support is running as well as it should and that we aren&#8217;t sacrificing best practices and performance (at least not always!) for the sake of &#8220;We&#8217;ll fix it later&#8230;&#8221;</p>
<h2>DBAs Can Make Users Happy</h2>
<p>How well are your systems running? Performance complaints? Do you have a DBA? If you don&#8217;t and the systems have a database back end it is incredibly likely that you are suffering from a lack of database TLC. I don&#8217;t know how many times I have been asked to consult on an engagement to &#8220;just make it faster!&#8221; or inherited horrible performing environments that were easily fixed with DBA 101 stuff (updating statistics, rebuilding indexes, the right settings, etc.). I know that because I do some consulting on the side, I might be eating into some billable time here but that&#8217;s fine, I have a busy life with the family, church and full time work. As a DBA, I usually know where to start looking for database performance problems. As a DBA, I usually know what planned maintenance to do on the database server and databases to keep things running smoothly. If you had a DBA, you would have less performance related fires; you wouldn&#8217;t have to pay an invoice to a consultant to come in and save the day. Your Sys Admin could help figure out an issue but, if they don&#8217;t have a lot of hands on &#8211; and academic &#8211; knowledge of database performance tuning and troubleshooting, it is going to take longer and could potentially include painful results if guesses/blind stabs are made. They specialize in a different skill set.</p>
<p><strong>Reason 3: Database Administrators can prevent (or more easily resolve) performance issues or troubleshooting situations.</strong></p>
<h2>Oh No!!! Everything is down!</h2>
<p>Picture a disaster scenario. System is belly up, drives are burned, whatever. How quickly do you want to be up? Your director, VP or CIO wants it yesterday and they want to know why your people are running around in panic mode looking stuff up on search engines.</p>
<p>A good Database Administrator (again, hopefully) is <a href="http://www.straightpathsql.com/archives/2009/01/do-you-focus-too-much-on-your-backups/" target="_blank">practicing restores</a> or devising clever ways to <a href="http://www.simple-talk.com/content/article.aspx?article=1028" target="_blank">sample for restore failure possibilities</a>. They are thinking about disaster scenarios and possible responses to them. They have done restores before and have likely dealt with strange errors, corruption or common failure scenarios. Hopefully they are familiar with forums and know where to help find (and test) information. They can think on their feet about the ramifications of various recovery options or settings changes in a time of crisis.</p>
<p><strong>Reason 4: Even if you stuffed your DBA in a closet on moth balls and only opened the door when danger strikes the time saved in that disaster and the possible data saved during that disaster justifies a DBA role in a lot of companies.</strong></p>
<h2>Your Data Is Your Business</h2>
<p>How much do you rely on your data? Analysis of trends. Sales Forecasts. Payroll data. Sales data. Customer lists. Partner lists. Inventory. Shipping and Tracking information. You name the piece of your business, it is highly likely that you can&#8217;t name 2 or 3 that don&#8217;t have data stored in a database. <strong>What happens if you lose that? What happens if you can&#8217;t get to it fast enough? What happens if you can&#8217;t trust it to be accurate?</strong></p>
<p><strong>Reason 5: Your data is pretty important. </strong>You might have hired a Microsoft Exchange experienced system administrator because you realize how important e-mail is to your company. How useful is that e-mail system without your core systems described above? How much does your organization spend on various forms of insurance?</p>
<h2>How Can I Get a DBA?</h2>
<p>I could go on with more reasons. I could give you horror stories. I could tell you about the strange things vendors have requested (and the responses I&#8217;ve gotten when <a href="http://www.straightpathsql.com/archives/2009/01/dba-questions-to-ask-a-vendor/" target="_blank">questioning those requests</a>&#8230; Things like &#8220;look.. no one ever complained about that before&#8221;). I could go out and find statistics that talk about companies closing their doors because of data loss. I think you get the point though.</p>
<p>If you have database instances and applications running,  the simple truth is that you probably have enough work to keep a DBA busy. Maybe you could start smaller and get someone on retainer. I do that with some companies as an advisor/mentor. There are plenty of other people offering the same types of services, some larger companies dedicated to providing remote DBA or DBA Advisory services. Maybe you can hire someone with a good DBA background who has other interests and could wear a second hat for you.</p>
<p>I would say that in the New England job market, this must be a known fact &#8211; It seems like database roles are always being advertised or actively recruited, even in the down economy. So I would say get your DBA search on and fill that role already! Do it quick before the most experienced DBAs are gobbled up.</p>
<p><strong>What do you think? </strong>Why do you (or don&#8217;t you) have a DBA? Any horror stories from when you&#8217;ve been burned by not having that role filled?</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/05/why-hire-a-dba/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>5 Things SQL Server Should DROP</title>
		<link>http://www.straightpathsql.com/archives/2010/05/5-things-sql-server-should-drop/</link>
		<comments>http://www.straightpathsql.com/archives/2010/05/5-things-sql-server-should-drop/#comments</comments>
		<pubDate>Tue, 11 May 2010 16:12:17 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Pet Peeve]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Community]]></category>
		<category><![CDATA[Pet Peeves]]></category>
		<category><![CDATA[tagged]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=545</guid>
		<description><![CDATA[

When I picture Paul Randal, I picture a guy who likes to run up to a bees nest at a crowded picnic and give it a good couple whacks. You know what I mean, it’s that laughing picture in his twitter profile. Or maybe it’s the devil’s advocate style he has. Maybe it’s his controversial [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F05%252F5-things-sql-server-should-drop%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FbQ9p9H%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%225%20Things%20SQL%20Server%20Should%20DROP%20%20%23%22%20%7D);"></div>
<p>When I picture<a href="http://www.sqlskills.com/BLOGS/PAUL/" target="_blank"> Paul Randal</a>, I picture a guy who likes to run up to a bees nest at a crowded picnic and give it a good couple whacks. You know what I mean, it’s that laughing picture in his <a href="http://twitter.com/PaulRandal" target="_blank">twitter</a> profile. Or maybe it’s the devil’s advocate style he has. Maybe it’s his controversial facebook thoughts? Either way, he likes to call things out and make people think. That’s a great trait, all kidding aside. He started a blog meme asking <a href="http://www.sqlskills.com/BLOGS/PAUL/post/What-5-things-should-SQL-Server-get-rid-of.aspx" target="_blank">what 5 “features” you’d like to see retired in SQL Server</a>. His responses were great and he tagged some folks. I’ve looked at <a href="http://brentozar.com" target="_blank">Brent Ozar’s</a> <a href="http://www.brentozar.com/archive/2010/05/things-sql-server-should-truncate/" target="_blank">response</a> and was then <a href="http://sqlblog.com/blogs/aaron_bertrand/archive/2010/05/11/tagged-5-things-sql-server-should-drop.aspx" target="_blank">tagged</a> by <a href="http://sqlblog.com/blogs/aaron_bertrand/default.aspx" target="_blank">Aaron Bertrand</a>.</p>
<p>After reading those three responses so far, I have to say I am not going to be that original so most of these will be a hearty “Amen!” to earlier sentiments.</p>
<h2>Auto Shrink</h2>
<p>I made my entrance into SQL Blogging with a series of <a href="http://www.straightpathsql.com/archives/category/shrinking-transactions/" target="_blank">rants</a> about shrinking databases. I still get hits to articles like “<a href="http://www.straightpathsql.com/archives/2009/01/dont-touch-that-shrink-button/" target="_blank">Don’t Touch That Shrink Button!</a>” from web searches or forums. The simple fact of the matter is.. Well to put it simply, “raise your hand if you think regular shrinking of production databases is a good idea.” Okay. Look around. Any hands raised? Not many. So why, on earth, would Microsoft make that a stinking setting option?</p>
<p>I would like to see this retired, and doing it in a Service Pack would be alright with me. Or at least rename it to “I’m not dangerous enough by myself, please automatically add to performance frustrations and index fragmentation while keeping my database size tidy, even though it will grow again right after the shrink but then again I never liked right sizing databases that requires too much work &#8211; Yes/No” (Yeah, I know… Not the best grammar there, <a href="http://facility9.com/2010/04/20/the-act-of-writing" target="_blank">Jeremiah</a>, but…) This was already suggested by Paul and Brent.</p>
<h2>Full Recovery by Default (Or something…)</h2>
<p>Again I’m stealing ideas (<em>but I’m doing it to help people!</em>) – Brent and Paul both also suggested this. This has been like this for a <strong>long</strong> time. It still trips countless people up each day. Another hand raising question – how many of you have experienced, helped someone with or laughed at someone experiencing uncontrolled transaction log growth caused by a lack of log backups in full recovery model? All of the hands that were down in the earlier question were just up. We’ve all seen it, hopefully we haven’t really laughed though. It happens All. The. Time.</p>
<p>A good tactical move would be to remove this as a default. Start folks out in Simple.  Or perhaps a strategic option would be a “Recovery Model Wizard” as a required step of installations? It would be nice to not need it but I think a lot of folks could benefit. As long as there was some way to override it with an advanced configuration, I wouldn’t mind a tutorial explaining pros/cons and costs of settings so people could make &lt;gasp&gt; informed decisions about their recovery models. Or maybe that is enabling companies to not hire experienced DBAs? I don’t know, what do you think?</p>
<h2>No Simple Way to Truncate Backup History</h2>
<p>Why make someone write a script or know to go look in a maintenance plan to find this option? Backup history isn’t critical to restores, sure it makes GUI based restores easier but how many GUI based restores are done going past 30 days? Why not make a default rolling window and let SQL cleanup that history. Provide a configuration option to change this window, even a configuration screen during setup asking other questions that should be asked but never get looked at by a lot of the SQL Server installations out there (backup history, recovery modes, heck even error log recycles)</p>
<h2>Auditing – Enterprise Only?</h2>
<p>Aaron talked about licensing models and I agree. One area is Auditing. Nowadays, even smaller companies with smaller budgets are being subject to increasing scrutiny and audit standards. In some ways, this can help a larger company that has a budget for Enterprise edition everything and an audit staff. What about the smaller company that is cash strapped? They can get most of the performance they need out of Standard and handle most questions/problems just fine, a $15k difference (or so) in per CPU licensing is a lot to ask for to better handle some of the auditing abilities in SQL Server.</p>
<h2>Next, Next, Next, Finish</h2>
<p>Aaron talked about the installation process in his response. He was talking about some of the bad defaults like I mentioned when talking about cleaning up backup history. This is perhaps more of a tongue-in-cheek response but it has some sort of a serious underpinning. I’ve always complained (raise your hand one last time if you’ve shared this complaint) that SQL Server is too easy to install. Accepting defaults and clicking next, next, finish gives folks a SQL Server instance that they put all of their most sensitive and important data. It also gives them:</p>
<ul>
<li>No backups
<p><div id="attachment_547" class="wp-caption alignright" style="width: 310px"><a href="http://www.flickr.com/photos/bonnett/455610604/"><img class="size-medium wp-image-547  " title="455610604_efe19bd72a" src="http://www.straightpathsql.com/wp-content/uploads/2010/05/455610604_efe19bd72a-300x224.jpg" alt="" width="300" height="224" /></a><p class="wp-caption-text">Brings back memories of 386DX, &quot;Boost Priority&quot; is  not a turbo button</p></div></li>
<li>Full Recovery mode with no log backups</li>
<li>No thought of DR</li>
<li>No thought of right sizing a database</li>
<li>Options that look tempting to select like “boost SQL priority”</li>
<li>Data and Logs on the same drive (performance concern and recoverability concern)</li>
<li>False confidence that everything is fine</li>
</ul>
<p>That list could go on but the point is maybe SQL Server is a little too <em>easy</em> to install? I’ve heard it in a joking manner before like, “why do we need a SQL Server DBA? Any moron can install it!” I’ve seen the results of any old IT person (or business person) installing SQL. It inspired a <a href="http://www.straightpathsql.com/archives/tag/installation/" target="_blank">series of posts on thinking about SQL installations.</a></p>
<p>I am going to take a cue from Brent and not tag anyone but welcome you to respond in your own post, leave a comment arguing with me (or agreeing) below or leave a comment on any of the blog posts that are sparked from the <a href="http://www.sqlskills.com/BLOGS/PAUL/post/What-5-things-should-SQL-Server-get-rid-of.aspx" target="_blank">original post by Paul</a>. I&#8217;d love to hear your thoughts, maybe I&#8217;ve gone too far? Maybe I missed something critical. I&#8217;d love to hear your thoughts. Also feel free to <a href="http://feeds.feedburner.com/StraightpathSolutionsSqlBlog" target="_blank">subscribe to the feed here</a> for more posts like this.</p>
<h2>Related Posts At StraightpathSQL.Com</h2>
<ul>
<li><a href="../archives/2009/01/do-you-focus-too-much-on-your-backups/" target="_blank">Why I think you focus too much on your backups</a> – As  discussed in the presentation, the focus should be on restores. May  seem like semantics, but the focus on restore means you are thinking of  more questions.</li>
<li><a href="../archives/2009/11/how-do-you-install-sql-server-part-1/" target="_blank">How Do You Install SQL Server?</a> – The first of a 3  part series where we discuss some tips for installing SQL Server and  planning for a successful implementation.</li>
<li><a href="../archives/2009/08/benchmarking-who-needs-it/" target="_blank">SQL Server Benchmarking Tips</a> – I introduced the  Performance Analysis For Logs tool in this presentation, this post talks  about that tool.</li>
<li><a href="../archives/2009/02/what-sql-instances-are-installed-on-my-network/" target="_blank">Find All SQL Server Instances On Your Network</a> – I  talk about using the Microsoft Assessment and Planning toolkit to locate  all of your SQL Server instances. This post describes my discovery and  use of this great (<strong>and free</strong>) tool.</li>
</ul>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/05/5-things-sql-server-should-drop/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Check Out These Tools &#8211; SQL University</title>
		<link>http://www.straightpathsql.com/archives/2010/05/check-out-these-tools-sql-university/</link>
		<comments>http://www.straightpathsql.com/archives/2010/05/check-out-these-tools-sql-university/#comments</comments>
		<pubDate>Fri, 07 May 2010 13:51:53 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[SQLUniversity]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Find SQL Instances]]></category>
		<category><![CDATA[Performance Analysis Of Logs]]></category>
		<category><![CDATA[SQL Tools]]></category>
		<category><![CDATA[SQL University]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=536</guid>
		<description><![CDATA[

Some neat (and free) tools to help you out with SQL Server. This is my second contribution to the SQL University &#8220;Tools of The Trade&#8221; week series.
In part one we had a quick chat about why to look at using various tools to help you out working with SQL Server. In this post, we&#8217;ll talk [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F05%252Fcheck-out-these-tools-sql-university%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fd1lG8j%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Check%20Out%20These%20Tools%20-%20SQL%20University%20%23%22%20%7D);"></div>
<p>Some neat (and free) tools to help you out with SQL Server. This is my second contribution to the<a href="http://sqlchicken.com/sql-university/" target="_blank"> SQL University</a> &#8220;Tools of The Trade&#8221; week series.</p>
<p>In part <a href="http://www.straightpathsql.com/archives/2010/05/get-you-some-tools-sql-university-spring-2010/" target="_blank">one </a>we had a quick chat about why to look at using various tools to help you out working with SQL Server. In this post, we&#8217;ll talk about some neat free tools I&#8217;ve encountered (or plan on encountering) in my career. This has a DBA bent to it since that is what I primarily am. Please do check out the post from DBA Coach, <a href="http://thomaslarock.com" target="_blank">Tom LaRock</a>, where he goes through all types of <a href="http://thomaslarock.com/2010/05/sql-university-tools-of-the-trade/" target="_blank">SQL Server tools</a>. His post is great and covers a lot of information and he brings up a good point on rolling your own (I was originally going to say, &#8220;Don&#8217;t, plenty of tools already exist&#8221;. His post reminded me of what I learned through rolling my own tools early on and it reminded me that a lot of companies started out that way).</p>
<p>Enough introduction, on to some tools&#8230;</p>
<h2>Performance Analysis Of Logs (PAL)</h2>
<p>Great Tool! I was introduced to this tool from a SQL Server premiere field engineer working on a case at my full time position. I originally blogged about <a href="http://www.straightpathsql.com/archives/2009/08/benchmarking-who-needs-it/" target="_blank">using PAL with SQL Server</a> last year and have remained smitten with this tool. You can download it from codeplex <a href="http://pal.codeplex.com/" target="_blank">here</a>. Check it out, it is free and easy to install. In a nutshell this tool takes perfmon log files (even tells you what counters and objects to watch) and it creates pretty reports that show you potential issues. Great for troubleshooting general performance issues. Great for taking baselines.</p>
<h2>Microsoft Assessment And Planning Toolkit (MAP)</h2>
<p>Put down your pencil. Put down your notebook. Pop Quiz Time! Ready? <strong>How many instances do you support? How many instances of SQL Server are installed in your network? What version are they?</strong> How did you do? Put your shoes and socks back on please, it won&#8217;t help.</p>
<p>I don&#8217;t know a bout you but at most environments I walk into, that is not a readily answerable question. There are hidden SQL Server instances everywhere, it would seem. This is a tool that is also free and you can download it from Microsoft <a href="http://technet.microsoft.com/en-us/library/bb977556.aspx" target="_blank">here</a>. I blogged about this tool last year talking about <a href="http://www.straightpathsql.com/archives/2009/02/what-sql-instances-are-installed-on-my-network/" target="_blank">how to find your SQL Server instances</a>, but it really has other uses. Not only can it find your instances, it gives you a simple excel spreadsheet with good information (Server Name, Instance Name, Version and Edition of SQL Installed to name just a few) and you can use this spreadsheet as the start of a total environment documentation. Add columns for application owners, support people, etc. Import it into a database of database instances.</p>
<h2>Enterprise Policy Management Framework</h2>
<p>This great tool is another tool you can <a href="http://epmframework.codeplex.com/" target="_blank">download</a> from Codeplex. It is a neat framework that sits on top of Policy Based Management. It can take your existing policies and check them against all of your SQL Server 2000,2005 or 2008 instances that you discovered with the MAP tool above. It evaluates the policies and presents some excellent reports that can give you a good glance of how you are looking with compliance. This is a great tool to allow you to quickly find potential higher priority policy failures and drill into more details about what the failures are. If you are still doing homework from our meeting on <a href="http://www.straightpathsql.com/archives/2010/04/share-your-knowledg/" target="_blank">knowledge sharing</a>, this would be one great way to open up info about your environment. Publish the reports and let people see how compliant the environments are with the policies you setup.</p>
<h2>SQL Nexus</h2>
<p>SQL Nexus should be in your troubleshooting arsenal. It collects data from various sources and gives you some good diagnostics information and detailed <a href="http://sqlnexus.codeplex.com/wikipage?title=SqlNexusReports&amp;referringTitle=Home" target="_blank">reports</a> outlining potential areas of concern. This is, yet another, free tool you can <a href="http://sqlnexus.codeplex.com/" target="_blank">download </a>from Codeplex (Sensing a pattern? Perhaps you can do some searching/playing on Codeplex and find some new tools in the process <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  )</p>
<h2>Three Books</h2>
<p>There are plenty of other good free tools around. Checking out Tom&#8217;s post above or  following a blog syndication feed like SQLServerpedia will get you some tips for SQL Server tools as folks blog about tools they like. One of the books below actually goes into some details on tools like SQL Nexus. These books are three books I think should belong in every SQL Server person&#8217;s library. (There are others but these three are a good start).</p>
<p>In No specific order:</p>
<ul>
<li>Inside SQL Server T-SQL Querying. This book, by Itzik Ben-Gan, exists for SQL Server <a href="https://www.amazon.com/dp/B002VPEA62?tag=wwwstraightpa-20&amp;camp=213381&amp;creative=390973&amp;linkCode=as4&amp;creativeASIN=B002VPEA62&amp;adid=0MP8KREH9YQWHMQYRPCH&amp;" target="_blank">2005 </a>and for <a href="http://www.amazon.com/gp/product/0735626030?ie=UTF8&amp;tag=wwwstraightpa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0735626030" target="_blank">2008</a>. Perfect book for anyone who has to write SQL code or advise those that do. It covers the how and why behind how SQL processes a query. It covers set based theory and helps you think logically.</li>
<li><a href="http://www.amazon.com/gp/product/1935182048?ie=UTF8&amp;tag=wwwstraightpa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=1935182048" target="_blank">SQL Server MVP Deep Dives</a> &#8211; 53 MVPs got together to write this book. Tips and Tricks, advice and commentary on a huge range of topics. All easy reads, all written from the folks who give much to the SQL community. Proceeds of book sales help out a worthy cause as well.</li>
<li><a href="http://www.amazon.com/gp/product/0470484284?ie=UTF8&amp;tag=wwwstraightpa-20&amp;linkCode=as2&amp;camp=1789&amp;creative=390957&amp;creativeASIN=0470484284" target="_blank">Professional SQL Server 2008 Internals and Troubleshooting</a> &#8211; I just read 80% of this book ( have one more chapter to finish for an upcoming review). So far? This book is a great balance of academic knowledge going into the &#8220;how and why?&#8221; behind the topics and practical information (putting it together for the real world). The last few chapters of this book also talk about using a few free tools and reporting components to better tune and work with your environment.</li>
</ul>
<p>I may make a part 3 to this in the future and add some more free tools that I missed in the interest of not over burdening you in this one post. If I do, I&#8217;ll link it here and it will be published to my <a href="http://feeds.feedburner.com/StraightpathSolutionsSqlBlog" target="_blank">feed</a>.</p>
<h3>SQL University Survey</h3>
<p>If you would like to participate, SQL University is running a survey  to seek feedback on all sessions provided this semester. If you have a  few moments please <a href="https://spreadsheets.google.com/viewform?formkey=dDBoSW02QldrTTc2dER3WVZheUlEX3c6MQ" target="_blank">check  out the survey.</a> The results will help us blog more relevant content  and improve SQLU next semester!</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/05/check-out-these-tools-sql-university/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Get You Some Tools &#8211; SQL University Spring 2010</title>
		<link>http://www.straightpathsql.com/archives/2010/05/get-you-some-tools-sql-university-spring-2010/</link>
		<comments>http://www.straightpathsql.com/archives/2010/05/get-you-some-tools-sql-university-spring-2010/#comments</comments>
		<pubDate>Thu, 06 May 2010 13:12:32 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[SQLUniversity]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[SQL Tools]]></category>
		<category><![CDATA[SQL University]]></category>
		<category><![CDATA[Tools of The Trade]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=532</guid>
		<description><![CDATA[

I don&#8217;t know about you, but I&#8217;m too busy to do it all. I use tools to help me do my job as a DBA. Let&#8217;s talk about some of the tools or types of tools that might help you do your job.
This is Week 4 of the Spring 2010 semester of SQL University &#8211; [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F05%252Fget-you-some-tools-sql-university-spring-2010%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FbuSVB2%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Get%20You%20Some%20Tools%20-%20SQL%20University%20Spring%202010%20%23%22%20%7D);"></div>
<p>I don&#8217;t know about you, but I&#8217;m too busy to do it all. I use tools to help me do my job as a DBA. Let&#8217;s talk about some of the tools or types of tools that might help you do your job.</p>
<p>This is Week 4 of the Spring 2010 semester of <a href="http://sqlchicken.com/sql-university" target="_blank">SQL University</a> &#8211; Tools Of The Trade Week. Thanks, Jorge for setting this up! I&#8217;m your official instructor for this week but if you check out the SQL University site there may be some guest instructors adding their thoughts as well. We&#8217;ll divide this up into a couple posts. You are at the first post, a general discussion. In Part 2, I share some<a href="http://www.straightpathsql.com/archives/2010/05/check-out-these-tools-sql-university/" target="_blank"> free SQL Server tools</a> that have helped me.</p>
<h2>Why Use Tools?</h2>
<p>Do you have a full staff of production DBAs backing you up? Do all of your jobs and servers run as they are expected? Do you hate writing your own environment documentation from scratch? Get confused when there are performance issues?</p>
<p>Well, those are some great reasons to look at SQL Server help from some source. Be it reporting add-ons to Management Studio, a third party vendor&#8217;s product for monitoring your environment, some PowerShell scripts you wrote or even a SQL Script you found (and tested!) from a trusted resource, there are tons of tools out there to help you.</p>
<p>My goal in this post is to get you to think about looking beyond the tools that ship with SQL Server and consider your needs. Look at ways to get a force multiplier for your environment.</p>
<h2>Isn&#8217;t SSMS Enough?</h2>
<p>SQL Server Management Studio is a great tool. From it you can do just about every task that you would need to do to manage day to day DBA duties. Developers can bang out SQL code in it. Access can be granted or revoked. You can view built-in reports or add performance dashboard reports.</p>
<p>It isn&#8217;t enough, though. There are great tools out there from vendors. There are ways for you to fill your own specific needs with custom scripts or even your own applications. There are some great SQL Server vendors that come to mind who started because someone saw a need and developed a tool.</p>
<h2>So What Do We Need?</h2>
<p>Well I was going to go through a list of some types of tools in this first post but <a href="http://twitter.com/SQLRockstar" target="_blank">Tom LaRock</a> actually beat me to the punch with his DBA coach contribution to the SQL University topic. Rather than do it here, go check out his blog and look at some of the tips and thoughts in his <a href="http://thomaslarock.com/2010/05/sql-university-tools-of-the-trade/" target="_blank">great post on SQL Server Tools</a>.</p>
<p>We&#8217;ll come back inPart 2 and revisit some neat tools I&#8217;ve liked and used or liked and plan on using from codeplex (free).</p>
<h3>SQL University Survey</h3>
<p>If you would like to participate, SQL University is running a survey to seek feedback on all sessions provided this semester. If you have a few moments please <a href="https://spreadsheets.google.com/viewform?formkey=dDBoSW02QldrTTc2dER3WVZheUlEX3c6MQ" target="_blank">check out the survey.</a> The results will help us blog more relevant content and improve SQLU next semester!</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/05/get-you-some-tools-sql-university-spring-2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>What Service Pack Are Your Client Tools At?</title>
		<link>http://www.straightpathsql.com/archives/2010/04/what-service-pack-are-your-client-tools-at/</link>
		<comments>http://www.straightpathsql.com/archives/2010/04/what-service-pack-are-your-client-tools-at/#comments</comments>
		<pubDate>Tue, 27 Apr 2010 15:10:25 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Service Pack]]></category>
		<category><![CDATA[SQL Server Management Studio]]></category>
		<category><![CDATA[Version Control]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=479</guid>
		<description><![CDATA[

So you have a plan to apply service packs to your SQL instances. You test them out and try to keep a regular schedule to ensure they are up to date. That is great.
What About SQL Server Management Studio?
What about the copy of SSMS that a developer is using to create scripts? This is spring [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F04%252Fwhat-service-pack-are-your-client-tools-at%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2Fb74Jig%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22What%20Service%20Pack%20Are%20Your%20Client%20Tools%20At%3F%20%23%22%20%7D);"></div>
<p>So you have a plan to apply service packs to your SQL instances. You test them out and try to keep a regular schedule to ensure they are up to date. That is great.</p>
<h2>What About SQL Server Management Studio?</h2>
<p>What about the copy of SSMS that a developer is using to create scripts? This is spring of 2010 so perhaps I shouldn&#8217;t have to be inspired by this story but either I am alone and you can laugh at me or maybe you&#8217;ll double check and avoid the same issue. Some indexes recently worked their way into production in an environment that I am starting to put controls over, but hadn&#8217;t at the time. I use <a href="http://sqlfool.com/" target="_blank">Michelle Ufford&#8217;</a>s (SQLFool on twitter) <a href="http://sqlfool.com/2010/04/index-defrag-script-v4-0/" target="_blank">index defrag script</a> to programatically handle my index rebuilding/reorganizing and the script yelled at me and failed for a couple indexes. Apparently they were set to disable page level locking. <strong>What? </strong>This is a pretty advanced option that you&#8217;d want to only use if you suspect page level locks are causing issues and want to force SQL to maintain row level locks. In this case it was for a few columns in some very (for my organization) large dimension tables. It didn&#8217;t make sense. I asked the developer and he had no clue what I was talking about. Come to find out, he is using SSMS 2005 RTM against this SQL Server 2005 SP3 environment. Well there is a bug in the SSMS 2005 RTM version that automatically unchecks the &#8220;enable page level locks&#8221; option.</p>
<h2>How Can I Check?</h2>
<p>This is something you should be doing anyway. There are also other differences between versions and it is generally best to try and match (as best as possible) the versions you are using. I would say that the client tools can generally be at the latest even if you have several variations of SP/CU levels on your instances.</p>
<ul>
<li><strong>E-Mail </strong>- You can try the &#8220;Please check your SQL Server Management Studio Version&#8221; e-mail option. Explain to folks how to check (Help &#8211;&gt; About and look at the version number). You can even ask/require that everyone send you a screen shot of their findings. That might work, that might be a pain to manage unless you are in a smaller environment.</li>
<li><strong>SMS &#8211; </strong>I am not an SMS/SCCM knowledgeable person but I know these packages can inventory software on desktops and many companies use these to push software compliance. Well work with whatever team manages SMS/SCCM and have them look at this. Perhaps they can at least do reporting at first. You can work with the one offs and see if any edge cases exist. If not, perhaps an upgrade of the client tools automatically is in order, perhaps warnings/e-mails and a process to prevent connections if folks fail to change/etc.</li>
<li><strong>Programatically? &#8211; </strong>PowerShell is still on my list of technologies to get a lot more familiar with and I bet it could help here, perhaps. I can&#8217;t give you a neat script but the version of the ssms.exe file  will give you an even more detailed look at what version you are running. You&#8217;ll see the CUs as well as this post by <a href="http://blogs.msdn.com/psssql/archive/2009/08/21/ssms-fails-to-restore-with-sql-2000-instances-and-ssms-versioning-explained.aspx" target="_blank">Bob Ward at Microsoft explains</a>.</li>
<li><strong>How do you check and enforce? </strong>I&#8217;d love to hear what other people do in their case to ensure compliance to the standard version/service pack (if you set a standard) and to ensure folks are upgrading client tools appropriately.</li>
</ul>
<h2>The Bottom Line</h2>
<p>A code check/review would have potentially turned this up so one should have been done, they are now that this environment is more tightly controlled but perhaps that one option could have slipped through the cracks if we hadn&#8217;t already bumped into it. The bottom line here is that we may not be desktop technicians, SMS administrators, etc. but we should be aware of what tools our connections are coming from and we should get a voice in the process of determining that that is set in stone. Otherwise we risk strange issues and rat holes.</p>
<p>I&#8217;ll make a part two to this post and blog about various SET options and checking those periodically, setting standards. Sounds silly and nit picky but it can affect plan reuse and recompilations. Check back here or subscribe to the <a href="http://feeds.feedburner.com/StraightpathSolutionsSqlBlog" target="_blank">feed</a> for the part two post.</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/04/what-service-pack-are-your-client-tools-at/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>T-SQL Tuesday #005 &#8211; Reporting For Duty</title>
		<link>http://www.straightpathsql.com/archives/2010/04/t-sql-tuesday-005-reporting-for-duty/</link>
		<comments>http://www.straightpathsql.com/archives/2010/04/t-sql-tuesday-005-reporting-for-duty/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 18:03:20 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[#tsqltuesday]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Pet Peeve]]></category>
		<category><![CDATA[#tsql2sday]]></category>
		<category><![CDATA[Reporting]]></category>
		<category><![CDATA[SQL Sentry]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=433</guid>
		<description><![CDATA[

Aaron Nelson is hosting this week&#8217;s T-SQL Tuesday. His topic, like mine from last week, has a lot of ways I could go. He basically said to talk about something that has to do with reporting. I decided to take the hodgepodge approach and talk about a couple things.
Disclaimer  &#8211; I am not syndicating this [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F04%252Ft-sql-tuesday-005-reporting-for-duty%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FcvYxir%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22T-SQL%20Tuesday%20%23005%20-%20Reporting%20For%20Duty%20%23%22%20%7D);"></div>
<p><a href="http://sqlblog.com/blogs/adam_machanic/archive/2010/04/05/t-sql-tuesday-005-reporting.aspx" target="_blank">Aaron Nelson</a> is hosting this week&#8217;s T-SQL Tuesday. His topic, like mine from <a href="http://www.straightpathsql.com/archives/2010/03/t-sql-tuesday-004-a-roundup/" target="_blank">last week</a>, has a lot of ways I could go. He basically said to talk about something that has to do with reporting. I decided to take the hodgepodge approach and talk about a couple things.</p>
<p><strong>Disclaimer  &#8211; </strong>I am not syndicating this post because I am talking about a vendor&#8217;s product. I make no money from said vendor but enjoy working with their tools and have a complimentary license from them for use in consulting (mainly because when clients see the tool they want to buy it anyway). I also was invited to, and participated in, their first ever Product Advisory Board meeting, got some free food out of the deal (but not enough to leave my integrity at home). At the end of the day I like their product and get nothing if you select them and nothing less if you don&#8217;t but I think it is at least worth a side by side test drive with other such products.</p>
<h2>SQL Sentry 5.5 And Letting Reports Save You</h2>
<p>I have known about SQL Sentry for a long time, since hearing about them from a former manager of mine who happens to be a SQL MVP (regular readers already know who I am referring to). I have used their products at a couple of places I&#8217;ve worked and have enjoyed the experience. One thing I thought was lacking on the performance side was some underdeveloped reporting functionality but that has just changed. I downloaded their new version 5.5 when it was in Beta and I have loved their reports, even saved my bacon a couple of times.</p>
<p>Well, SQL Sentry 5.5 is in general release now and you can <a href="http://www.sqlsentry.com/download-trial/trial.asp" target="_blank">download a trial here</a>. You can read about 5.5&#8242;s features in a <a href="http://greg.blogs.sqlsentry.net/2010/02/sql-sentry-v55-need-to-know.html" target="_blank">blog post</a> by Greg Gonzalez, their President and CEO.  I am not going to send screen shots of my environment&#8217;s reports because I don&#8217;t have a dummy environment setup and it would require too much Photoshop cleaning server names/etc but I&#8217;ll steal some of the screen shots Greg used in his post. I&#8217;ll also describe the importance of these reports in my environment.</p>
<p>While I think SQL Sentry is a great tool and would recommend it to anyone, I don&#8217;t really care what tool you use as long as you track history and can report off of it. It can save your butt, show negative trends and make life easier for you. There are lots of tools that can do this for you. You can buy a 3rd party product to handle monitoring, alerting and the reporting. You can play with the <a href="http://msdn.microsoft.com/en-us/library/dd939169.aspx" target="_blank">Management Data Warehouse</a> and Data Collectors that Microsoft provides with SQL Server 2008 also.</p>
<p>Anyway&#8230; What are some questions that I have recently used these reports to answer?</p>
<p><strong>Our New SAP GL system has been growing, we think. Can you tell us how much the SQL Server database grew since last Friday? </strong>So before I had SQL Sentry 5.5 I could have prepared for this question in advance by setting up jobs to track the data, configuring a SCOM SQL management pack to collect that data, etc. I didn&#8217;t have those things setup and the question caught me off guard, to be honest. I could go back and look at backup sizes and get a decent idea but I had SQL Sentry Eevent Manager/Performance Advisor running and had just recently installed 5.5 at the time. I clicked the Reports drop down knowing new reports were added when I upgraded to the beta version and saw a menu that looked a bit like this:</p>
<div id="attachment_434" class="wp-caption aligncenter" style="width: 310px"><a href="http://greg.blogs.sqlsentry.net/2010/02/sql-sentry-v55-need-to-know.html"><img class="size-medium wp-image-434 " title="pa_reporting[6]" src="http://www.straightpathsql.com/wp-content/uploads/2010/04/pa_reporting6-300x192.png" alt="" width="300" height="192" /></a><p class="wp-caption-text">Some of the new Performance Reports</p></div>
<p><strong>Nice! </strong>I saw one for SQL Server File Utilization &#8211; By Database&#8230; What the heck, I gave it a shot and sure enough. I selected the database I wanted, the date range I wanted (Friday to the Tuesday they were asking on) and poof! A pretty report showing the growth of used space in each data file in the SAP ECC database and a great graphical representation of how much free space remained. I was able to quickly tell them that each file had grown by about 12GB in that 5 day process. Graphical representation helped me explain the free space/used space concepts, the beginning/end text data helped me do a quick calculation. (The report had a percent change but they wanted the GB changed so I still had to do a little simple math. Maybe an enhancement request to put the MB changed also? Saves me from having to type calc ;-0 )</p>
<div id="attachment_435" class="wp-caption aligncenter" style="width: 375px"><a href="http://greg.blogs.sqlsentry.net/2010/02/sql-sentry-v55-need-to-know.html"><img class="size-full wp-image-435 " title="reports_file_database_thumb[7]" src="http://www.straightpathsql.com/wp-content/uploads/2010/04/reports_file_database_thumb7.png" alt="" width="365" height="258" /></a><p class="wp-caption-text">Database Growth Over Time</p></div>
<p><strong>&#8220;The database server wasn&#8217;t running right last night!&#8221;</strong></p>
<p>Another use of another report while still in beta mode. Came in to work and folks were complaining about performance the night before in the database server. Application team indicated it was probably a database issue and we should consider ways to improve that. It was an area we have had discussion in the past and there had been some DB issues but I got no alerts from SQL Sentry the night before, no alerts from SCOM and when talking it didn&#8217;t make sense that there was any DB issues.</p>
<p>Well before these reports, I could gather the data from a few sources. I could look at SCOM as we are tracking several performance counters, I could look at SQL Sentry&#8217;s Performance Advisor tool for that time frame and see the disk activity, TOP SQL commands issued, memory/CPU graphs, etc.</p>
<p>I decided to play with the Reporting menu again and discovered the Windows &amp; SQL Server Performance report. Figured that might be a good way to quickly rule in or out DB server issues for further investigation. Ran the report and pretty much saw a quiet server that had a few spikes that were not correlated. <strong>Nice!</strong> I exported this report (like I did with the DB file growth report) to .pdf and sent it off with some thoughts. Turns out there were no issues at all (in any portion), just a bit of overreacting..</p>
<h2><strong>What&#8217;s the Moral?</strong></h2>
<p>As fun as it is when first starting out to build your own reports and monitoring processes, there is something nice about having everything you need a few clicks away. Consider looking at collecting your performance data in some form with some tool and have some reports ready to use to save you time in the rabbit hole later.</p>
<h2>Mini Rant</h2>
<p>I said it was a hodgepodge. This one is about SQL Server Reporting Services (full disclosure: I am in a SSRS 2005 environment, but I don&#8217;t believe this was changed for 2008). Now maybe it is only the environment I am in with some reports that need &#8220;help&#8221; and tuning work (some of which is in progress as time allows the development teams). Why can&#8217;t SQL Server write a permanent entry every time a report starts?! Sure there is some data in the Reporting Services TEMPDB but it is difficult, if not impossible, to make usable sense out of the data. Yes, if the report aborts or finishes a record is written to the Execution Log.</p>
<p>That being said, we occasionally have a report execution of one or a couple of our 300-450 reports that just brings the well provisioned SSRS box to its knees. We have no choice but to resort to service restart/iis reset/etc. Mixture of cube and Stored Procedure reports and it could be either. When trying to figure out what is causing the issue and seeing if we can just isolate the responsible dashboard, queries, etc. we can&#8217;t see anything. Why? Because there is no execution log entry until the report is done (with success or not).</p>
<p>I should (and will now that I am thinking of it) open a Connect item to suggest that possibly an Execution Log entry with a status of &#8220;in progress&#8221; be written when a report is FIRST requested. Then when it completes the status can change to completed,aborted,etc.</p>
<p>Is that so wrong? Do you bump into similar issues ever?</p>
<p>We have a plan to get moving to 2008 and that may even reduce the need for this functionality as SQL Server 2008 renders reports much more efficiently than 2005 and we likely won&#8217;t have these restart requiring incidents, hopefully.</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/04/t-sql-tuesday-005-reporting-for-duty/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>SQL Saturday #33 &#8211; Charlotte &#8211; A Recap</title>
		<link>http://www.straightpathsql.com/archives/2010/03/sqlsaturday33/</link>
		<comments>http://www.straightpathsql.com/archives/2010/03/sqlsaturday33/#comments</comments>
		<pubDate>Sun, 07 Mar 2010 01:22:02 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Community]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[Professional Development]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[training]]></category>
		<category><![CDATA[PASS]]></category>
		<category><![CDATA[Speaking Opportunities]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.straightpathsql.com/?p=349</guid>
		<description><![CDATA[

I am sitting in the terminal at Charlotte&#8217;s airport waiting for my flight back, it&#8217;s a bit delayed so I have time to reflect on a great SQL Saturday. This was my second SQLSaturday and it was a fantastic event. Boston was also great, as I blogged about but I was here a bit longer [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2010%252F03%252Fsqlsaturday33%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2FbWUayT%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22SQL%20Saturday%20%2333%20-%20Charlotte%20-%20A%20Recap%20%23%22%20%7D);"></div>
<p>I am sitting in the terminal at Charlotte&#8217;s airport waiting for my flight back, it&#8217;s a bit delayed so I have time to reflect on a great SQL Saturday. This was my second SQLSaturday and it was a fantastic event. <a href="http://www.sqlsaturday.com/34/schedule.aspx" target="_blank">Boston</a> was also great, as I<a href="http://www.straightpathsql.com/archives/2010/02/sqlsatseacoastsql/" target="_blank"> blogged about</a> but I was here a bit longer and had more time to interact with a lot of great speakers and attendees. I also had a great time hanging out wit the folks at SQL Sentry for their first Product Advisory Council meeting.</p>
<p>I am excited to be heading home to my family but it is actually a bit sad leaving some of the great people I got to hang out with. Once again, there were some great speakers (It is intimidating to be speaking at an event with the names who spoke today).</p>
<p>I&#8217;m going to take a walk through my weekend with a few lenses. If you are interested, come along for the journey&#8230;</p>
<h2>Product Advisory Council Meeting</h2>
<p>Wow. A great time. I felt a little odd being there with crowd of gurus and MVPs that they had assembled but I wasn&#8217;t lost in the conversations. I&#8217;ll blog about this a bit more in a separate non-syndicated post since it is related to a product. Suffice it to say, I learned a lot and was able to provide (hopefully meaningful) input. I had a great time hanging out with the team and hitting the speaker party on Friday. What a great time put on by the platinum sponsor of this SQL Saturday &#8211; SQL Sentry. Great food and some awesome conversations with some familiar faces from PASS and the blogosphere.</p>
<h2>SQL Saturday Presenter</h2>
<div id="attachment_358" class="wp-caption alignright" style="width: 310px"><a href="http://www.straightpathsql.com/wp-content/uploads/2010/03/803690926_CDGMe-M.jpg"><img class="size-medium wp-image-358" title="803690926_CDGMe-M" src="http://www.straightpathsql.com/wp-content/uploads/2010/03/803690926_CDGMe-M-300x200.jpg" alt="" width="300" height="200" /></a><p class="wp-caption-text">I am balding faster than I realized... </p></div>
<p>So last month was my first time speaking at a community event and I was a lot more nervous and a bit more rigid then than I was today. I had a really fun time presenting both sessions today. A bit more fun in the first talk (more on that in a second) but the audience was great, the atmosphere was relaxed, I had laughs where I was hoping to, had some good interaction back from all y&#8217;alls in the audience. <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>I know what I need to improve on and am hoping to get some feedback to know what I don&#8217;t know I need to improve on but I really want to speak some more, it is a great next step in the learning continuum (I learned preparing, learned through the questions during and after the talks,etc)</p>
<h3>First Talk &#8211; <a href="http://www.straightpathsql.com/where" target="_blank">&#8220;As a DBA, Where Do I start?&#8221;</a></h3>
<p>If I had to rate myself, I&#8217;d say this was the better of the two. I was in a 20 capacity room and the chairs filled up with some folks standing around in the back and sitting on the floor/tables. I liked the smaller room, the fuller feeling room and being closer to the audience made it flow better, I think.</p>
<p>The questions from this talk told me that I was heading in the right direction. I think I might tweak it to include some more demos and perhaps better show a priority of steps. I want to keep doing this chat, there are <strong>a lot</strong> of accidental DBAs out there.</p>
<p>I need to work on my slide design. I like the minimalist approach and the images I use in this deck to provide some levity (the waterboarding of vendors seemed to be a universally well accepted practice down here) but I want to link back to more points (Like Buck Woody&#8217;s <a href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;seqNum=32" target="_blank">checklist for DBAs</a>) and maybe spend some more time on practical aspects, perhaps as a follow on to that conversation. Maybe a screen cast to make.</p>
<p><strong>Second Talk</strong> &#8211; <a href="http://www.straightpathsql.com/ucandoit" target="_blank"><strong>&#8220;You Can Tune Your Own SQL Code&#8221;</strong></a></p>
<p>I saw a fair number of familiar faces in this talk from my first talk. That was nice, made me feel that much better about the first talk and inspire some confidence. That and all the sweet tea cursing through my system (I discovered and fell in love with the stuff down here&#8230; Did I mention I don&#8217;t get out of New England a whole lot?) made me definitely energetic for this talk. This talk was really crowded, I was a bit late getting over there because of the previous session and I had to fight a crowd to get in. It was a 20 person room but the tables and aisles were well filled. Hoping folks found what they were expecting.</p>
<p>It started out well. I feel like I had some good audience interaction and some good laughter (where I was alright hearing laughter, mind you) and some fun with the crowd. I need to rework and re-rehearse this presentation more, though. My timing of the slides to demos was off, I was too rushed in the demo. I also need to better tweak what I talk about, I only have 60 minutes and I can&#8217;t get into every single detail (like the side track on the whiteboard of B-Trees, those kind of discussions can happen later). I think the Phone Book trick worked to help illustrate SARGable queries and I&#8217;ll keep that. I will, however, re-time everything and make a better flow. All in all, I don&#8217;t think I outright bombed (please leave a comment if I did! It can be anonymous, My speaker rate account is completely anonymous if you prefer- Mike Walsh speaker rate). I had some questions afterwards, requests for cards, etc. but I didn&#8217;t feel as good about this one as the first talk. I want to give a better experience for the next time I deliver this talk.</p>
<h2><strong>SQL Saturday Attendee</strong></h2>
<p>I went to the following sessions:</p>
<p><strong><a href="http://kendalvandyke.blogspot.com/2010/02/presenting-at-sql-saturday-33-charlotte.html" target="_blank">Kendal Van Dyke</a> (<a href="http://twitter.com/SQLDBA" target="_blank">@SQLDBA on twitter</a>)</strong> &#8211; He gave a talk on an i<a href="http://www.sqlsaturday.com/viewsession.aspx?sat=33&amp;sessionid=1288" target="_blank">ntroduction to Blogging and Speaking</a>. He asked me if I would help on the panel but it was all his presentation. It was a great presentation, really shows what our community is about &#8211; Community. We don&#8217;t want to exclude speakers or bloggers, we want more! I blogged about that in the post series on blogging. A few people in the audience said they would start blogging or speaking. I really hope they do. Great presentation!</p>
<p><strong><a href="http://thesqlagentman.com/2010/03/sql-saturday-33-charlotte-nc/" target="_blank">Tim Ford</a> (@SQLAgentMan on twitter)</strong> &#8211; He said he was off because he was sick but he gave a good presentation anyway. He talked about tips for harnessing the power of Lazy as a DBA. Some good tips (including using templates for a baseline server installation process. That is awesome and I have a huge need for that in my day job, I&#8217;ll be implementing his idea very soon)</p>
<p><strong><a href="http://www.sqlsaturday.com/viewsession.aspx?sat=33&amp;sessionid=1287" target="_blank">Kendal Van Dyke</a></strong> (again) &#8211; He gave a great presentation on SSD storage options with pros/cons and honest feedback/caveats. I haven&#8217;t yet played with it and his talk gave me some great food for thought. I was very impressed by his cold reboot mid-presentation. I have never seen a Windows laptop reboot so quick. One thing I may do is change my laptop drive real soon <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><strong>Jeffry Schwartz &#8211; </strong>I met Jeffry at the PAC meeting. He is a really thoughtful, intelligent and in tune with performance kind of guy. His talk was great. He didn&#8217;t talk a lot about SQL Server but he talked about <a href="http://www.sqlsaturday.com/viewsession.aspx?sat=33&amp;sessionid=1371" target="_blank">&#8220;performance outside the box&#8221;</a>. He got into counters I don&#8217;t play with much in perfmon (DPCs, Processor interrupts) and talked about a lot of really good, geeky hardware and OS information. I am used to SQL Server sessions devoted a lot more to performance counters within SQL and SQL performance. Jeffry reminded us of something that should be common sense (but not always is a first instinct for folks) &#8211;&gt; sometimes performance problems have nothing to do with SQL. He showed us some tools and tips to help see when someone else on your SAN is the blame, or when the system is to blame or even a driver/NIC configuration. I really hope to see Jeffry speak at the PASS Summit for a longer session.</p>
<h2>Going Home Mike</h2>
<p>Well that&#8217;s it. Going home Mike is tired (the sugar rush from the sweet tea is wearing off), filled with knowledge and excited to speak again. I won&#8217;t be doing any SQL Saturday&#8217;s until at least fall with baby number 3 (Sam) coming sometime around the end of May. I pay my own way and have a family to support. Plus my time will be devoted to getting the Seacoast NH/ME/MA SQL chapter working with our first meeting coming in April.</p>
<p>I may even to submit a Professional Development chat to PASS or perhaps even a variation of my DBA talk from SQL Saturday.</p>
<p>Again, thanks to the sponsors, this was a memorable time! I stole my picture from this stream: http://sqlsentry.smugmug.com/Events/2010-03-SQLsaturday33/11432245_nDzgG I am hoping they don&#8217;t mind <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Did you go? What did you go listen to? What did you take away? Let us know in the comments or a post of your own.</p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2010/03/sqlsaturday33/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>One Man&#8217;s Trash&#8230;</title>
		<link>http://www.straightpathsql.com/archives/2009/12/one-mans-trash/</link>
		<comments>http://www.straightpathsql.com/archives/2009/12/one-mans-trash/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 16:15:30 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[Life Lessons]]></category>
		<category><![CDATA[Professional Development]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Attitude]]></category>
		<category><![CDATA[Lessons From Life]]></category>
		<category><![CDATA[Work Ethic]]></category>

		<guid isPermaLink="false">http://straightpathsql.mikewalshonline.com/?p=74</guid>
		<description><![CDATA[

Do you live in a town with a dump? I do (well, transfer station). On any given weekend you can find people looking for treasure in the scrap metal or electronics bins.
I never thought I&#8217;d say it, but over the past couple weeks of visiting the dump, I have found an amazing treasure that will [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2009%252F12%252Fone-mans-trash%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22One%20Man%27s%20Trash...%20%23%22%20%7D);"></div>
<p>Do you live in a town with a dump? I do (well, transfer station). On any given weekend you can find people looking for treasure in the scrap metal or electronics bins.</p>
<p>I never thought I&#8217;d say it, but over the past couple weeks of visiting the dump, <strong>I have found an amazing treasure that <span style="text-decoration: underline;">will</span> help my career. Maybe yours?<br />
</strong></p>
<h2><strong>&#8220;What&#8217;s the Treasure, Mike?&#8221;</strong></h2>
<div id="attachment_157" class="wp-caption aligncenter" style="width: 510px"><a href="http://www.flickr.com/photos/uber-tuber/2513030878/"><img class="size-full wp-image-157" title="2513030878_7175d66c51" src="http://www.straightpathsql.com/wp-content/uploads/2009/12/2513030878_7175d66c51.jpg" alt="2513030878_7175d66c51" width="500" height="375" /></a><p class="wp-caption-text">No, it&#39;s not a new computer or developer attack broom</p></div>
<h2>A story of two attitudes</h2>
<p><em>Alright, I tricked you. There is no physical treasure to claim</em>.<em> Instead I found another story to add to my <a href="http://www.straightpathsql.com/blog/category/life-lessons" target="_blank">life lessons</a> category to apply to my day job.<br />
</em></p>
<p>When I visit the dump I see what I would imagine are common dump frustrations &#8211; Grumpy staff working on cold (or hot) mornings getting yelled at by customers mad about fees for larger items.  People ignoring the rules about what goes where &#8211; &#8220;forgetting&#8221; to recycle, machinery breaking down, etc.</p>
<p>It&#8217;s a thankless job -  A lot of standing or sitting around, some yelling and every so often you find the staff going a bit over the top with the rules and empowerment. I can&#8217;t blame them, they probably get in trouble when the town racks up too much in fees from the next stop of our trash because of bad sorting.</p>
<p>This <strong>authoritarian</strong> type of employee can be found pretty easily. He is there to look at what you are doing and you know it and he wants you to know it. Forget that piece of plastic in the regular trash and you are getting chewed out. He was given some power, he likes it and he is going to demand your &#8220;respect&#8221; by making sure he points out your mistakes as loud as possible. He works there, you don&#8217;t, &#8220;don&#8217;t forget it&#8221;. We had <em>this</em> guy in my town. It appears as though he was replaced. Contrast that with&#8230;</p>
<h2>A Newer, More Improved Attitude</h2>
<p>A few weeks ago I noticed a new employee up at the compactor. I saw an unfamiliar sight when I saw him &#8211; he was unloading the trash from the vehicle in front of me. When I pulled up and got out, he was taking my trash bags and heaving them into the compactor as I walked to the back.</p>
<p>When I saw this I said, &#8220;Hey thanks for the help! You don&#8217;t have to do that though, I can get it!&#8221; His reply, <strong>&#8220;What else am I going to do out here? Helping folks out makes the day go by faster and keeps traffic moving better. Keeps me young&#8221; </strong>shocked me.<strong> </strong>What a response, what a lesson. We chatted about the job and his motivation a bit. He was smiling, seemed to enjoy his job and helping.</p>
<p>Every week since, I&#8217;ve been greeted the same way. Pleasant conversation and smiling help with my trash. Today was a cold, windy day. Normally the authoritarian dump guy would spend the colder days in the &#8220;office&#8221; trailer (<em>unless someone was breaking a big rule</em>). He was still out there helping unload the trash. I told him I appreciated it and was surprised by the consistent help. His answer was simple, &#8220;<strong>Nah, what else am I going to do? Why sit back there and let the day drag on?&#8221; </strong>His partner, a familiar face at the dump, has also been helping lately; it seems as though he&#8217;s started a new trend. new paint is everywhere and when asked the new guy indicated it was time to make it look nicer around there.</p>
<p>I am sure he still charges money to unload a couch. I am sure he even notices the &#8220;bang!&#8221; of a glass jar in regular trash bags and has to say something. I bet his approach is different, though. I&#8217;d imagine some folks recycle just because of the help they get now (and knowing he is seeing their trash bags up close).</p>
<h2>What does this mean to a DBA?</h2>
<p>To me, I Have experienced a real life moral story with implications to put into practice right now.</p>
<h3><strong><span style="font-size: 120%;">What&#8217;s the Moral?</span></strong></h3>
<p><strong><span style="font-size: 120%;"><br />
</span></strong></p>
<p><strong> </strong></p>
<p><strong>In a sentence</strong>:It doesn&#8217;t matter what your job is, enjoy it and think about what <strong>you</strong> can do to make it a better experience for you and your customers.</p>
<p><strong>Expanded</strong>:</p>
<ul>
<li><strong>As DBAs we can come across as the authoritarian dump guy &#8211; </strong>The developers are our customers. They have deadlines and issues just like we do. We make mistakes. They make mistakes. Let&#8217;s cut them some slack and lift up a trash bag with them, have a conversation and figure out how we can help each other.</li>
</ul>
<ul>
<li><strong>Regardless of our task or assignment, we can have fun -</strong> This morning at the dump, I was greeted with a great attitude and smile. This was in spite of a pair of bright red ears in the cold.</li>
</ul>
<ul>
<li><strong>Building up people builds allies &#8211; </strong>What have you done for others lately? As DBAs we are under pressure (<em>who isn&#8217;t?</em>) from a few directions. When problems happen the Database is often blamed. When we are brought into the loop it is often way too late. When the network or disks aren&#8217;t cooperating, we sometimes aren&#8217;t believed. <strong>So?</strong> We can get bitter, take it out on the first code review we get invited to (<em>or experience during a production performance problem</em>) or we can smile and have a, &#8220;how can I help&#8221; attitude. We can help others out and focus on what we can be doing better while still holding firm to the right way. This keeps us in the <strong>data advocate</strong> role but does it with honey instead of bees.</li>
</ul>
<p><em>My own trash became my treasure here.  I was reminded of some important lessons. I was given a thought process to take back to apply to my day job and I was shown one way that I can work harder at living out that Bible verse I claim on my business cards. (Col 3:23-24  And whatsoever ye do, do it heartily, as to the Lord, and not unto men;<sup> </sup>Knowing that of the Lord ye shall receive the reward of the inheritance: for ye serve the Lord Christ.)</em></p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2009/12/one-mans-trash/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>How do -you- (I) use SQL Server?</title>
		<link>http://www.straightpathsql.com/archives/2009/12/how-do-you-i-use-sql-server/</link>
		<comments>http://www.straightpathsql.com/archives/2009/12/how-do-you-i-use-sql-server/#comments</comments>
		<pubDate>Fri, 04 Dec 2009 16:25:00 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[How Do You Use SQL Server]]></category>
		<category><![CDATA[meme]]></category>
		<category><![CDATA[On The Job]]></category>
		<category><![CDATA[tagged]]></category>

		<guid isPermaLink="false">http://straightpathsql.mikewalshonline.com/?p=76</guid>
		<description><![CDATA[

I was recently tagged in an interesting blog post by A Misplaced New Englander, David Taylor. (dyfhid on twitter). The question sounds simple enough, &#8220;How do you use SQL Server where you work?&#8221; Of course the answer is not simple. I echo Grant Fritchey&#8217;s response in his blog post that it would be easier to [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2009%252F12%252Fhow-do-you-i-use-sql-server%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2F4EldWZ%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22How%20do%20-you-%20%28I%29%20use%20SQL%20Server%3F%20%23%22%20%7D);"></div>
<p><em>I was recently tagged in an <a href="http://dyfhid.blogspot.com/2009/11/how-do-you-use-sql-server.html" target="_blank">interesting blog post</a> by <a href="http://dyfhid.blogspot.com/" target="_blank">A Misplaced New Englander, David Taylor</a>. (<a href="http://twitter.com/dyfhid" target="_blank">dyfhid</a> on twitter). The question sounds simple enough, &#8220;How do you use SQL Server where you work?&#8221; Of course the answer is not simple. I echo <a href="http://scarydba.wordpress.com/" target="_blank">Grant Fritchey&#8217;s</a> response in his <a href="http://scarydba.wordpress.com/2009/12/01/how-do-you-use-sql-server/" target="_blank">blog post</a> that it would be easier to post about how it&#8217;s not used. That being said we&#8217;ll see what we can do&#8230;</em></p>
<h2>What&#8217;s my day job Vertical?</h2>
<p>&nbsp;</p>
<p>As a consultant part time nights/weekends I get to experience a lot of different environments and uses of SQL Server. Rather than talk about those, I&#8217;ll talk about the day job in general terms. I work for a large, global property and casualty insurer. We don&#8217;t write a ton of policies in the subsidiary I work at, but we write some very expensive and interesting policies. From oil rigs to directors and officers insurance to specialty cargo lines we insure it. That means we have to be quite adaptive to very different data sources with widely varying pertinent information about each of a multitude of lines. We don&#8217;t have huge databases but they are complex databases as a result.</p>
<p>Our primary claims system is built on DB2 and it feeds several systems that utilize SQL Server as a back end.</p>
<h2>How Is SQL Server Used?</h2>
<p>&nbsp;</p>
<p>Some key uses:</p>
<ul>
<li><strong>SharePoint </strong>- We use a global SharePoint (MOSS 2007) release to share information between regional teams and business functions. A few hundred GB of content databases so far in a relatively young implementation. <strong>As DBA </strong>I work closely with the SharePoint team in making sure performance is right, maintenance is right and things are working smoothly. SQL 2005 back-end but currently in the process of migrating to a SQL Server 2008 cluster on Windows 2008 we are building out in the coming weeks.</li>
<li><strong>Data Warehouses </strong>- There are several key data warehouses in SQL Server 2005. These warehouses track information about past claims, customers, financials, etc. These warehouses feed reports (in <strong>Reporting Services 2005 </strong>currently) and Cubes (<strong>analysis services 2005)</strong> which also feed those reports. <strong>As DBA</strong> I work closely with the warehouse teams in analyzing performance concerns, suggesting architecture and query improvements for performance and help with troubleshooting, availability and reliability decisions.</li>
<li><strong>Enterprise Service Bus </strong>- We have several applications built either on SharePoint web parts or .net web services. Lots of work with <strong>Biz Talk</strong> as our service bus. Data flows through to SQL Server and a lot of xml passing into and out of SharePoint. <strong>As DBA</strong>, I work closely with the dev teams in getting deployments done, performing code reviews and helping them write better performing code.</li>
<li><strong>Various ISV Provided apps &#8211; </strong>SAP is the financial suite we are in the middle of deploying (on SQL 2005) to replace Great Plains. We also support several ISV applications that perform various business back office functions or IT functions.</li>
</ul>
<h2>What do I do?</h2>
<p>&nbsp;</p>
<p>I am the sole production DBA. There are roughly 20 production SQL instances I manage and at least double that number of dev/test/uat instances I manage. Following the philosophy that the DBA is the <strong>data advocate</strong> at a company, I perform normal DBA duties but also spend a lot of time working with developers in understanding impacts of coding and design decisions. I also spend a lot of time in meetings discussing future plans, time lobbying the infrastructure team for improved hardware needs and helping to change the way folks access environment for deploys and development support.</p>
<p>My primary duty is to keep the lights on and make sure I am invisible to the end end users (the customers of IT as a whole.. I try to be very visible to developers as needed, but not to the end users clicking on reports, using the Operational Data Store through the ESB. Not invisible in a &#8220;not gonna help you&#8221; point of view. Invisible in the sense of, you shouldnt&#8217; experience any issues that are database related so you shouldn&#8217;t have to know there is a such role as DBA, in a way. Does that make sense?</p>
<p>I help analyze new technology with the architecture teams and try to have a say in balancing technology to solve real business problems or technology for technology&#8217;s sake (tough line to tow sometimes at most places with geeky architecture teams&#8230; who doesn&#8217;t love new stuff?)</p>
<p>I give impromptu courses to developers on performance tuning their own code, spend time hand holding some folks through indexing and design considerations and try to share my knowledge wherever and whenever possible.</p>
<p>&nbsp;</p>
<h2>What Technologies do I use?</h2>
<p>&nbsp;</p>
<p>Besides the normal SQL Server tools and other free tools I&#8217;ve blogged about (<a href="http://www.straightpathsql.com/blog/2009/2/25/what-sql-instances-are-installed-on-my-network.html" target="_blank">Microsoft Assessment and Planning tool to enumerate all SQL instances on our network</a> or <a href="http://www.straightpathsql.com/blog/2009/8/6/benchmarking-who-needs-it.html" target="_blank">Performance Analysis for Logs for performing benchmarks and tuning</a>) I use several tools day to day&#8230;</p>
<ul>
<li><strong>Monitoring Tools &#8211; </strong>We use Systems Center and Operations Manager (SCOM) for a large portion of our monitoring needs.&nbsp; I also use a few vendor provided SQL Server specific tools to keep track on my environment.</li>
<li><strong>Development/Comparison/Etc Tools <br /></strong></li>
<li><strong>Word &#8211; </strong>Documentation is important, I blogged about my thoughts there. I try to use this when possible to at least do screenshots of installation processes but hopefully create more detailed documentation.</li>
<li><strong>E-Mail -</strong> A lot of folks wish I didn&#8217;t use it so much. I wish I didn&#8217;t. Something to work on in 2010 is improving conciseness and taking things out of e-mail (where it&#8217;s too easy to be misunderstood or escalate needlessly) and into in person/on phone meetings.</li>
<li><strong>Change Data Capture &#8211; </strong>We are playing with a really neat tool from a vendor (found out about them at a User Group meeting they sponsored.) This tool captures data changes from our source claims system in real time rather than through triggers and offers a huge performance improvement over DB2 OLEDB open queries across a Linked Server.</li>
</ul>
<p>&nbsp;</p>
<h2><strong>What are some Challenges</strong> I face?</h2>
<p>&nbsp;</p>
<p><strong>Query performance</strong>. A lot of room for improvement and working with developers there. <strong>SQL Sprawl</strong> &#8211; Not multiple servers but &#8220;over instancing&#8221;, fewer servers&nbsp; (saves on licensing) but many instances leading to some performance issues. We are going through a process of separating what should be separated and bulking up with either multiple instances (or single instance used for multiple purposes) for the applications that can handle it.</p>
<p>Reporting performance and a &#8220;self service&#8221; MS Excel culture in the end user community. A lot of the warehouse reports are high row count reports as a result. Lots of rows returned simply to be exported into, and massaged by, Excel. This creates some performance issues with the way that SQL Server 2005 Reporting Services renders reports. There is a plan to investigate SSRS 2008 as some key changes will provide some relief. It&#8217;s just tough to find the time with a single DBA <img src='http://www.straightpathsql.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  Q1 2010 at this point. In the meantime, the self service aspect seems to really bode well for Power Pivot. I hope to create some demos in my spare time (I really want to learn Power Pivot and really feel it will be a huge win for my company) to show how cutting out the &#8220;middle man&#8221; of Reporting Services and giving richer tools for pivoting, formatting and massaging data will improve performance, reduce server load and make our users happier.</p>
<p>Rolling out new policies/procedures. Before me there was no official DBA, just reluctant DBAs from the team of sysadmins. As a result some of the best practices I enjoy seeing with SQL Security and deployment processes aren&#8217;t rolled out everywhere. It&#8217;s a slow process to go through proper channels but we are getting there. For instance, most environments have finally had their [<strong>Full Recovery Model, No Log Backup, Nightly Shrink Job</strong>] pattern fixed now.</p>
<h2>The Final Verdict?</h2>
<p>&nbsp;</p>
<p>SQL is working well for our needs. Where there are challenges, I would imagine we would face them regardless of our DBMS. Most problems faced by most companies don&#8217;t seem to be specific technology related issues but rather timeline or process related issues blamed on technology. Here we have some good processes, are always working on improvements and our business processes and timelines work well for the most part resulting in a largely positive experience.</p>
<p>I look forward to getting more 2008 implementations out there (using it myself right now for Policy Based Management of other instances and the new SQL 2008 SharePoint cluster will be live soon. Hopefully the RS/AS 2008 for the warehouse reports in production by Q1/Q2). It&#8217;s fun watching developers increase their knowledge and watch the improved code over time. Sure there are some long days and weeks. Sure there are some tough weekends but all in all, this is fun. Every day of working with SQL Server as a DBA, &#8220;Performance Geek&#8221; or self proclaimed Data Architect is a fun time and I still treat the job with excitement most of the time.</p>
<p>&nbsp;</p>
<h2>Tag &#8211; You&#8217;re it</h2>
<p><em>Rather than tag anyone specifically as quite a few have been tagged in posts already, what about you? Consider this an open tag (pretend I sneezed in a crowded movie theater and each invisible spore that left my nose is a mini hand reaching out to tag you&#8230; Sorry.. &#8220;outbreak&#8221; was on in the background while writing this post). How do you use SQL? What are some challenges you face? Add a comment, write a post and link back to the original thread Dave started or reference this post so I can see your response.</em></p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2009/12/how-do-you-i-use-sql-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How do -you- install SQL Server? (Part 3)</title>
		<link>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-3/</link>
		<comments>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-3/#comments</comments>
		<pubDate>Mon, 30 Nov 2009 18:20:42 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[InstallTips]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Defaults]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://straightpathsql.mikewalshonline.com/?p=75</guid>
		<description><![CDATA[

Welcome to part 3 in this series on a thought process around SQL Server Installation. In Part 1, we started talking about some basic steps and a thought process for a repeatable success story with your SQL Server installations. Part 2 discussed security, playing around before doing a first install and smoke testing afterwards.
Today we&#8217;ll [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2009%252F11%252Fhow-do-you-install-sql-server-part-3%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2F5DyE6r%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22How%20do%20-you-%20install%20SQL%20Server%3F%20%28Part%203%29%20%23%22%20%7D);"></div>
<p><em>Welcome to part 3 in this series on a thought process around SQL Server Installation. In <a href="http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-1/" target="_blank">Part 1</a>, we started talking about some basic steps and a thought process for a repeatable success story with your SQL Server installations. <a href="http://www.straightpathsql.com/blog/2009/11/23/how-do-you-install-sql-server-part-2.html" target="_blank">Part 2</a> discussed security, playing around before doing a first install and smoke testing afterwards.</em></p>
<p><em>Today we&#8217;ll close the discussion with some talk about maintenance, defaults and some post installation tips.<br />
</em></p>
<h2>&#8220;The install is done, here you go&#8221;</h2>
<p><strong>Wait! </strong>You clicked finish, you reviewed the logs and tested connectivity like we talked about in Part 2. You aren&#8217;t ready to deliver yet though. Let&#8217;s cover a few things first. This, again, is not meant to be exhaustive but to help you think about the full process. Check out the documentation and blogs and explore in a dev environment.</p>
<h2>Defaults</h2>
<p>If you just did the installation and changed a few things like some of the directories and options, you don&#8217;t have <strong>all</strong> of the defaults but there are things to look at after the installation. There are defaults to change, or at least understand and consider. Let&#8217;s hit a few of them here.</p>
<h4>Recovery Model</h4>
<p>As the model database goes, so goes each new database you create (without manually changing it). The Model database is just that &#8211; a model database. Add a table to model and each new database you create will have that table in it. The same goes for recovery model. On all new installations of SQL Server the recovery model for the model database is &#8220;FULL&#8221; out of the box. This means that every new database you create will start out in FULL recovery model and the log file will continue to grow (<strong>after you take your first full backup</strong> &#8212; <strong>until you take a full backup you are not truly in full recovery mode either when first starting out or when switching to full from simple). </strong>This is important to consider because if you are only planning on ever doing full backups and your recovery plans only have you recovering to a daily full backup, for example, you will see your log file grow to a point that can get out of control. (Then you have to start playing with -ugh- <a href="http://www.straightpathsql.com/archives/category/shrinking-transactions/" target="_blank">shrinking</a>)</p>
<p>If you don&#8217;t want this then change your recovery model. If you don&#8217;t know what it all means, start with <a href="http://msdn.microsoft.com/en-us/library/ms175987.aspx" target="_blank">books online</a>.</p>
<h4>Database Sizes</h4>
<p>By default new database files are set to a small size (2MB for data, 1MB for log). Don&#8217;t accept the defaults here. How big will your database grow to? What kind of transaction log space do you expect to need? Plan for that growth, add an overage percentage and &#8220;right-size&#8221; your files at the beginning. This prevents file fragmentation from frequent growths each time the file needs to grow and it helps give you peace of mind in knowing your database is right sized from the beginning.</p>
<p>For the Log File, you may want to check out this <a href="http://www.sqlskills.com/BLOGS/KIMBERLY/post/Transaction-Log-VLFs-too-many-or-too-few.aspx" target="_blank">post </a>by Kimberly L. Tripp on some tips for right sizing the transaction log.</p>
<h4>Database Locations</h4>
<p>Hopefully you setup a separate drive each for data files, log files and tempdb. That is generally a best practice though in lighter workloads it may not be absolutely necessary to split out tempdb. I say for log files it is always good from a performance and recovery standpoint to split log files from data files.</p>
<p>Where is your tempdb file? Do you need to move it to the drive you requested and setup for tempdb? (Check out this books online article on <a href="http://msdn.microsoft.com/en-us/library/ms174269%28SQL.90%29.aspx" target="_blank">Alter Database</a>. There is an example there for moving tempdb, in fact)</p>
<p>Are your default directories for new database log and data files setup right? (Right click on the server in SQL Server Management Studio &#8211;&gt; Go to Database Settings &#8211;&gt; What&#8217;s specified for the default directories?)</p>
<h4>Data and Log File Growth</h4>
<p>The default growth options for data and log files are likely not what you want to see. While it&#8217;s important to &#8220;right-size&#8221;, I am also of the opinion that you should allow for autogrowth as an insurance policy.  I just don&#8217;t like the default growth sizes (1MB for data files and 10% for log files). Instead I like to specify an amount that allows a &#8220;healthy&#8221; growth for that particular database and workload while looking to minimize file fragmentation from small chunks grown at a time. This varies from database to database. On an environment I just configured for a database that started at 25GB data and 5GB log file I chose 500MB and 250MB respectively.</p>
<p>I like to setup alerts for autogrowth operations with a monitoring tool watching my SQL environments. I like the insurance policy but in my mind using the insurance means there was a problem with the right-sizing.</p>
<h4>Backups (or lack thereof)</h4>
<p>We just talked above about understanding your recovery model. That is the first step in the game. Step two is setting up a backup strategy that matches your recovery strategy. My philosophy is that people focus on <a href="http://www.straightpathsql.com/archives/2009/01/do-you-focus-too-much-on-your-backups/" target="_blank">their backups too much</a>.  What I mean by that is &#8211; remember why we take backups &#8211; we take them to have a way of recovering our databases in a crisis. If you can remember that, your backup plan should come together and you should have backups setup and running in your new instance sooner than most other tasks.</p>
<h2>Maintenance</h2>
<p>There isn&#8217;t any being done yet. You can change the defaults above and deliver, but you&#8217;ll be getting to know this newly created instance at some point in production. Could it be a need to recover from failure? Maybe performance was fine and just started getting worse all of the sudden? SQL Server databases, like most other tools and applications, require regular maintenance. Let&#8217;s briefly talk about some of the quick hits I throw on most instances as a basic rule.</p>
<h4>Backups and history maintenance</h4>
<p>Can&#8217;t have too many reminders about backups. Make sure you are taking backups and have them running in an automated fashion.</p>
<p>Also make sure you are cleaning up your backup history. There is a great blog post by Jonathan Kehayias <a href="http://sqlblog.com/blogs/jonathan_kehayias/archive/2009/10/30/cleaning-out-your-backup-history.aspx" target="_blank">here</a>. Rather than regurgitate or try my own attempt, check it out.</p>
<h4>Index and Statistics Maintenance</h4>
<p>Your databases should have indexes for performance minded querying of data. They also help in the performance of updates (which are essentially making changes to data based on a query of that data) and having a clustered index can sometimes mean an improvement to inserts and deletes as well.</p>
<p>They grow less useful if your indexes are heavily fragmented and more work is required when working with an index than would otherwise be necessary. Look at rebuilding or reorganizing indexes as time allows. A great script by Michelle Ufford for this is <a href="http://sqlfool.com/2009/06/index-defrag-script-v30/" target="_blank">here</a>.</p>
<p>Statistics also help your database performance. Without them, the optimizer has a lot less to work with. Statistics help show the optimizer how unique your data is, how many qualifying rows could be found for queries, etc. They can get out of data even with auto update statistics set on (the default behavior). Updating statistics is a good practice to get into with maintenance as well. Paul Randal blogs about the <a href="http://www.sqlskills.com/BLOGS/PAUL/post/Search-Engine-QA-10-Rebuilding-Indexes-and-Updating-Statistics.aspx" target="_blank">debate </a>on what to do first (statistics update or index rebuild).</p>
<h4>Error Log Recycles</h4>
<p>Look up sp_cycle_errorlog and sp_cycle_agent_errorlog in books online. They are system stored procedures that do what they sounds like. They cycle the error logs in SQL Server and the SQL Server Agent. If you don&#8217;t do this from time to time the error logs can get a little too large to easily scroll through if you don&#8217;t restart your instance a lot (the error logs are reset each time your instance is restarted).</p>
<p>I typically recycle them weekly, especially in environments where I don&#8217;t have a monitoring tool and/or I do daily log checks on production environments ensuring no issues.</p>
<p>I also increase the number of error logs to a new number. If someone were to compromise a SQL environment they could theoretically run the sp_cycle_errorlog command the right number of times and some of their tracks are gone. I increase this to help alleviate that. It&#8217;s not ironclad but it is one more way to help harden SQL Server or at least provide more of a forensics ability.</p>
<h4>DBCC CHECKDB</h4>
<p>I don&#8217;t like database corruption. It doesn&#8217;t happen much and I take frequent backups to help alleviate potential data loss. Database corruption is rare nowadays. With each new release of SQL it seems to become rarer and rarer. But&#8230; It happens.</p>
<p>I like the comfort of knowing I check my databases for corruption as frequently as I can. I will typically setup a job to perform a &#8220;DBCC CHECKDB with no_infomsgs&#8221; on all of my databases as frequently as I can. While DBCC CHECKDB can be run concurrently with users in the system, I like to pick either low use or no use times to run it, especially for larger databases. I try to run it at least weekly and the more frequently, the better.</p>
<p>This will help my chances of detecting corruption before a user does.</p>
<h2>Wake me up, <em>as</em> you go-go</h2>
<p>(Is it wrong to paraphrase a wham song in public? I grew up in part of the 80s, but I digress&#8230;)</p>
<p>What kind of monitoring do you use at your company? There are a lot of great tools out there to use. There are even homegrown approaches you can find on <a href="http://www.sqlserverpedia.com" target="_blank">SQLServerPedia</a> or in articles at <a href="http://www.sqlservercentral.com" target="_blank">SQL Server Central</a>.</p>
<p>There are pros and cons to many of the tools and some quick web searches will show you a lot of these. The point is &#8211; <strong>use something!</strong></p>
<p>Don&#8217;t rely on the users to tell you when you have a problem or when a job fails. Before I hand an environment over to a project team or users, I like to know that I will find out if a job runs too long, a job finishes too quickly, the CPU is pegged for a substantial amount of time, the SQL Services become unavailable, etc.</p>
<p>It bears restating: <strong>Discover your problems before your users report them to you.</strong> (Or at least have a chance to do so!)</p>
<p>&#8212;&#8211;</p>
<p><em>Those are the basics I like to focus on when installing SQL Server. I am sure there are items that others look at as well. Please feel free to share them in the comments below. Thanks for reading the series and happy installations!</em></p>
<p><em>If you have any problems, feel free to leave a comment &#8211; I check regularly and have no problem helping you out with an issue during installation with some advice, clarification or a point in the right direction.</em></p>
<h3>Some Related Thoughts</h3>
<ul>
<li>While Talking about planning, do you ask potential or new <a href="http://www.straightpathsql.com/archives/2009/01/dba-questions-to-ask-a-vendor/" target="_blank">vendors any questions about their database needs</a>?</li>
<li>Do you know about all of the <a href="http://www.straightpathsql.com/archives/2009/02/what-sql-instances-are-installed-on-my-network/" target="_blank">SQL installations in your network</a>? As a DBA, you should.</li>
<li>Are you a new DBA? Maybe a sysadmin wearing a DBA&#8217;s hat? Here are some <a href="http://www.straightpathsql.com/archives/2009/03/where-do-i-start/" target="_blank">tips on where to start</a>.</li>
<li>Doctors, Chefs and Pilots can teach us DBAs a thing or two about <a href="http://www.straightpathsql.com/archives/2009/03/checklists-recipes-and-algorithms/" target="_blank">Checklists, Recipes and Algorithms</a>. Can be very useful in an installation or setup process.</li>
<li>I used to hate documentation. I now see it as something to help me get help and have someone else do the next installation. <a href="http://www.straightpathsql.com/archives/2009/06/documentation/" target="_blank">Embrace documentation</a>.</li>
<li>Part one of this series &#8211; <a href="http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-1/" target="_blank">preparing for SQL Server installation by planning</a>.</li>
<li>Part two of this series &#8211; <a href="http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-2/" target="_blank">securing and testing your SQL Server instance after installation</a>.</li>
</ul>
<p><em>Want more content like this? Subscribe to <a onclick="javascript:pageTracker._trackPageview('/outbound/article/feeds.feedburner.com');" href="http://feeds.feedburner.com/StraightpathSolutionsSqlBlog" target="_blank">this blog’s feed</a> in your favorite feed reader and stay up to date with tips and tricks. I like to share techniques and free tools I use to help me with my day job.</em></p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-3/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>How do -you- install SQL Server? (Part 2)</title>
		<link>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-2/</link>
		<comments>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-2/#comments</comments>
		<pubDate>Mon, 23 Nov 2009 15:40:35 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[DBA]]></category>
		<category><![CDATA[InstallTips]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Defaults]]></category>
		<category><![CDATA[Installation]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://straightpathsql.mikewalshonline.com/?p=72</guid>
		<description><![CDATA[

Welcome to this series on a thought process around SQL Server Installation. In Part 1, we started talking about some basic steps and a thought process for a repeatable success story with your SQL Server installations. Today let&#8217;s continue that story and talk some more about installation planning and success. We&#8217;ll finish up talking about [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2009%252F11%252Fhow-do-you-install-sql-server-part-2%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22How%20do%20-you-%20install%20SQL%20Server%3F%20%28Part%202%29%20%23%22%20%7D);"></div>
<p><em>Welcome to this series on a thought process around SQL Server Installation. In <a href="http://www.straightpathsql.com/blog/2009/11/17/how-do-you-install-sql-server-part-1.html" target="_blank">Part 1</a>, we started talking about some basic steps and a thought process for a repeatable success story with your SQL Server installations. Today let&#8217;s continue that story and talk some more about installation planning and success. We&#8217;ll finish up talking about some post installation options (You aren&#8217;t done when you click finish!).</em></p>
<p><em>If you have questions or concerns along the way, please shoot me a note in the comments and I&#8217;ll answer, get you an answer or update this post if anything isn&#8217;t clear.</em></p>
<h2>SQL Server Installation Tips (Cont.)</h2>
<p><em>Again this isn&#8217;t a step by step installation guide. This isn&#8217;t even a series to read in order as you install SQL Server. In fact, when reading documentation (which I hope you write when required), always read through first before you start doing. I learned that the hard way when making cookies with my daughter once. Just started combing ingredients then got to the step in the recipe that said, &#8220;Combine the dry ingredients separately from the wet.&#8221; Those cookies were salty, crunchy and, well, pretty bad. </em></p>
<p><em>Instead these are some things to read to help inspire questions to ask and think about when planning to roll out a SQL Server Installation.</em></p>
<p style="font-size: 130%;"><strong>Security</strong></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">What kind of industry do you work in? What kind of auditing/compliance regulations and secuirty best practices do you fall under? Regardless, it&#8217;s in your best interest as DBA to think of security from the beginning. Some questions to consider ahead of time are:</span></p>
<ul>
<li>What rights will your SQL Server and SQL Server Agent service accounts run under? Certainly doesn&#8217;t need Domain Admin, doesn&#8217;t even need local admin necessarily. Brian Kelley (<a href="http://www.sqlservercentral.com/blogs/brian_kelley/default.aspx" target="_blank">Blog</a>|<a href="http://twitter.com/kbriankelley" target="_blank">Twitter</a>) is a great resource on security. He blogs about the woes of using Domain Admin <a href="http://www.sqlservercentral.com/blogs/brian_kelley/archive/2008/06/12/avoid-domain-admin-level-accounts-for-sql-server.aspx" target="_blank">here</a>.</li>
<li>Unless you are installing 2008, the BUILTIN\Administrators group will have Sys Admin level access in SQL. Do you want this? You can change it (but <strong>you</strong> have to change it to do so)</li>
<li>Windows Authentication only? I prefer it that way, it relies on the security of your AD and network, less chance of clear text password being stored someplace. Will your apps support it? (Talk to your vendors from time to time.. <a href="http://www.straightpathsql.com/blog/2009/1/27/new-vendor-interview-with-an-annoying-dba.html" target="_blank">Ask them questions</a>) If you go this route, make sure you have the right AD groups in the sysadmin role.</li>
<li>Least Privilege &#8211;&gt; A philosophy to think about with all of the above is least privilege. Grant the minimal permissions needed to do the job required.</li>
<li>Groups instead of Accounts &#8211;&gt; I prefer to use AD groups as SQL logins in most cases. This can make administration easier (new member joins a dev team, they get added to the proper group and have developer rights in the dev SQL instance) and if you already do a great job with approvals and audit trails of adding people to groups you just inherited a best practice for &#8220;free&#8221;.&nbsp;</li>
</ul>
<p style="font-size: 130%;"><strong>Availability/Recovery</strong></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">What Service Level Agreement (SLA) will this instance fall under? Along with planning for I/O for performance and capacity make sure you consider your recovery solution. Do you have a separate drive for backups? Will you be using a third party program for SQL backups? If so, does it work on your proposed hardware and software setup? As I write this there are some interesting Operating System choices &#8211; Windows Server 2003 is still going strong, Windows 2008 has been in the wild for some time and Windows Server 2008 R2 is out and being used. What is the plan for your organization&#8217;s future? Do you implement that now? Better make sure the backup tool works and is supported first, kind of an important part of the job, <a href="http://www.straightpathsql.com/blog/2009/1/14/do-you-focus-too-much-on-your-backups.html" target="_blank">recovery is</a>.&nbsp;</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">What about availability/disaster recovery? Considering Mirroring/Clustering? Replication/Log Shipping? Does the hardware support it? Are you installing the components necessary and the editions necessary?</span></p>
<p style="font-size: 130%;"><strong><strong>Try It Before You Buy It</strong></strong></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">Yeah I know&#8230; Your timeline is tight, project management is breathing down your management&#8217;s neck to get this done. It&#8217;s your first time installing this version, this setup or with these options, though. You have a dilemma here &#8211; do you bang it out and slug through and have no impact on the timeline for when you can say, &#8220;Done! It&#8217;s built!&#8221;? Or do you spend a little time trying it out and breaking a few things along the way?</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">I vote for the latter when playing with something new. Even if it means a longer week in the office that week in order to make a date. I choose to pay now instead of later where possible. I am not suggesting you do a trial run for every single installation for the rest of your career. No, at some point you have to take off the training wheels and trust your process, your checklist and your smoke testing abilities. When first trying something major (and installing a production database instance is something major, no?), though, it makes sense.</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">Read the documentation. Read posts like <a href="http://www.straightpathsql.com/blog/category/installtips" target="_blank">this series</a> you are reading right now. Look at pre-existing checklists, tailor them to your preferences and standards and try it out. Build up an instance, follow the checklist, take screen shots for your own documentation, tweak your checklist based on input, etc. Try it, test it, experience it. </span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">Ask, &#8220;what happens if I press this button?&#8221; and then <strong>press the button and see</strong>. Take note of your findings and research the lessons. It&#8217;s called learning and building experiences. Take all of this knowledge and then apply it when building the real deal.</span></p>
<p style="font-size: 130%;"><strong><strong>Smoke Test</strong></strong></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">You went through the process. You checked your checklist. You have an installed instance of SQL Server (congratulations, yes it was almost as easy as next-next-next-finish, but you thought of the big picture and paid attention) now test it out. We&#8217;ll go on in Part 3 and talk about some maintenance, settings and defaults post installation.</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">For now, check everything over. Can you stop and start the instance through SQL Server Configuration Manager? Does the server restart just fine? Can you connect locally and remotely? Is SQL Agent running?</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">Have you looked over the installation logs? Have you looked at the SQL Server and SQL Server Agent Error Logs? What about the System and Application event logs on the server? Verify the installed files are where you expected them to be?</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;">Verify everything looks good but don&#8217;t check the &#8220;done&#8221; box yet. In <a href="http://www.straightpathsql.com/blog/2009/11/30/how-do-you-install-sql-server-part-3.html" target="_blank">Part 3</a> we&#8217;ll take a walk through some final considerations around defaults, maintenance and some other post installation tips. Then I&#8217;ll leave you alone.</span></p>
<p style="font-size: 130%;"><span style="font-size: 80%;"><strong><em>What about you? What else do you think about pre installation and during SQL Server installation? Have some horror stories about installations gone wrong because they were so simple and quick? We&#8217;d love to hear your opinion.</em></strong></span></p>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2009/11/how-do-you-install-sql-server-part-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>How to use SP_CONFIGURE in SQL Server</title>
		<link>http://www.straightpathsql.com/archives/2009/10/how-to-use-sp_configure-in-sql-server/</link>
		<comments>http://www.straightpathsql.com/archives/2009/10/how-to-use-sp_configure-in-sql-server/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 19:43:00 +0000</pubDate>
		<dc:creator>Mike Walsh</dc:creator>
				<category><![CDATA[DBA]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Syndicate]]></category>
		<category><![CDATA[Configuration]]></category>
		<category><![CDATA[How To]]></category>
		<category><![CDATA[sp_configure]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[sysconfigurations]]></category>

		<guid isPermaLink="false">http://straightpathsql.mikewalshonline.com/?p=61</guid>
		<description><![CDATA[

Seriously? A Blog post about SP_CONFIGURE?
I was in a Kalen Delaney&#8217;s SQL Internals class (Blog) last week. It was a great class and I learned a lot of great stuff. One thing I learned was very simple yet it was really big to me&#8230; A tip about sp_configure that she didn&#8217;t even teach as a [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fwww.straightpathsql.com%252Farchives%252F2009%252F10%252Fhow-to-use-sp_configure-in-sql-server%252F%22%2C%20%22shorturl%22%3A%20%22http%3A%2F%2Fbit.ly%2F8hxJyh%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22How%20to%20use%20SP_CONFIGURE%20in%20SQL%20Server%20%23%22%20%7D);"></div>
<h2>Seriously? A Blog post about SP_CONFIGURE?</h2>
<p>I was in a Kalen Delaney&#8217;s SQL Internals class (<a href="http://sqlblog.com/blogs/kalen_delaney/" target="_blank">Blog</a>) last week. It was a great class and I learned a lot of great stuff. One thing I learned was very simple yet it was really big to me&#8230; A tip about sp_configure that she didn&#8217;t even teach as a tip, just used it and thought it was common knowledge (was to a lot of people in the room but not me).</p>
<p>That got me thinking about writing a post about SP_CONFIGURE. What it is, what it does and what that tip is. So&#8230; Read on if you ever find yourself wondering, &#8220;How do I use sp_configure?&#8221;</p>
<p>Like what you are reading? Subscribe to my <a href="http://feeds.feedburner.com/StraightpathSolutionsSqlBlog" target="_blank">RSS feed</a> to get updated with content like this in the future.</p>
<h2>What is SP_CONFIGURE?</h2>
<p>Simply put &#8211; it&#8217;s a tool to display and change SQL Server settings. It seems to me that a lot of reluctant and newer DBAs are well versed in the GUI based configuration options but not always changing them through a query (or even viewing them). Not all options are changed through a GUI, some are only changeable through sp_configure.</p>
<h2>How do I use SP_CONFIGURE?</h2>
<p>Well it depends on what you are trying to do&#8230;.</p>
<h3>View Settings</h3>
<p>Take a look at your SQL Settings? Open a query window and just type and run <strong>sp_configure; </strong>you&#8217;ll likely get a partial list of settings. To see them all you have to enable an option called &#8216;Show Advanced Options&#8217;</p>
<h3>Change Settings</h3>
<p><strong>Be careful.. Changing settings affects your instance, a lack of understanding of a result could dramatically affect your instance, performance, availability, etc. Look up a setting in books online and understand it first! <em>This post is not about the settings, it is about the tool used to change the settings. Books Online is a great, free, resource when you have SQL Server installed, you can also get Books Online on the web (<a href="http://msdn.microsoft.com/en-us/library/ms130214%28SQL.90%29.aspx" target="_blank">2005</a>,<a href="http://msdn.microsoft.com/en-us/library/ms130214.aspx" target="_blank">2008</a>). No excuses here about making a setting change without understanding it and testing it (Remember, I like to see <a href="http://www.straightpathsql.com/blog/2009/1/18/empirical-evidence.html" target="_blank">empirical evidenc</a>e before trying something)</em></strong></p>
<p>Alright, now that my conscience is clear. You use sp_configure to change settings as well. You simply type sp_configure &#8216;setting name&#8217; <strong>(*)</strong> followed by the value. Execute that and you either have to restart the instance (if the option is not dynamic &#8211; able to be changed on the fly while the instance is running) or execute the statement &#8220;RECONFIGURE&#8221; if the setting is dynamic.</p>
<p>For example &#8211; if you wanted to show advanced options you would have to type: <strong>sp_configure &#8216;show advanced options&#8217;, 1 GO reconfigure GO<br />
</strong></p>
<p>Then when you run sp_configure again, you will see all of the available options.</p>
<h3><strong>* The Tip I learned from Kalen</strong></h3>
<p><strong>You don&#8217;t have to type the entire option text in!</strong> At least in SQL Server 2005 and above. I never knew this. It&#8217;s right there in books online but I never went there for sp_configure because I&#8217;ve been using it all this time. So maybe this isn&#8217;t as exciting to you as it is me. I mean you can copy and paste the value. Perhaps you don&#8217;t mix up your L&#8217;s when typing Parallelism (see&#8230;  I had to pause while typing it&#8230;) but I do. You just have to type in an unambiguous portion of the text.. Try it.. Don&#8217;t make a change but run: <strong>sp_configure &#8216;degree&#8217;</strong> and you will see the setting for max degree of parallelism. This is great! (<strong>Update: </strong>While spell checking my post, I realized that even though I typed parallelism slowly each time I spelled it, I got it wrong still&#8230; I&#8217;m a fool.)</p>
<h2>Output Columns of SP_CONFIGURE</h2>
<p>Pretty self explanatory but:</p>
<p><strong>name &#8211; </strong>The name of the value to be changed, again you can look up the definition for these values in books online.</p>
<p><strong>minimum &#8211; </strong>The minimum value setting that is allowed</p>
<p><strong>maximum &#8211; </strong>Yea, the maximum value that is allowed</p>
<p><strong>config_value &#8211; </strong>What value is currently configured?</p>
<p><strong>run_value &#8211; </strong>What value is currently running?</p>
<h2>Difference Between Config_Value and Run_Value</h2>
<p>The difference may already be clear but it&#8217;s important to take note. When you first make a change by running exec SP_CONFIGURE (&#8216;parameter&#8217;),newvalue the <strong>Config_Value</strong> has changed <strong>only. </strong>It is not until you either run<strong> reconfigure</strong> (if the setting is dynamic &#8211; that is no restart of SQL or reboot required) or <strong>restart</strong> your SQL Server instance (if the setting is not dynamic) that the <strong>run_value</strong> changes.</p>
<h2>SYS.CONFIGURATIONS</h2>
<p>The view only twin of sp_configure. You can select from this catalog view to see configuration options. No changing of settings necessary to see all options here since you can&#8217;t change them, it is a way to view your options and you can filter with a where clause.</p>
<p>This catalog view has several columns, the ones that are an exact match to a column in sp_configure will be ignored but the rest:</p>
<p><strong>configuration_id &#8211; </strong>Just an internal ID of the configuration setting. Good for trivia? I don&#8217;t use it for anything&#8230;</p>
<p><strong>value &#8211; </strong>same as <strong>config_value </strong>above</p>
<p><strong>value_in_use &#8211; </strong>the twin of <strong>run_value </strong>above.</p>
<p><strong>description &#8211; </strong>nice. A little less cryptic then the name column here or in sp_configure. I was going to say it might save you a trip to books online but if you didn&#8217;t know what it meant before reading a couple more words, you should still visit books online and understand the setting.</p>
<p><strong>is_dynamic -</strong> This very helpful tells you if a value is dynamic or not. 1 = Dynamic, just run reconfigure after changing and it changes &#8220;on the fly&#8221;. 0 = not dynamic &#8211; need to stop and start SQL Server service.</p>
<p><strong>is_advanced &#8211; </strong>Like the above, ever wonder if you have to change the show advanced option to display a value? Well you can find out here. It&#8217;s a flag, 1 is yes, 0 is no, like the is_dynamic flag.</p>
<h2>Does This Change Require A Restart?</h2>
<p>Just running SP_CONFIGURE, you can&#8217;t tell, can you? That&#8217;s why it&#8217;s important to pay attention above to SYS.CONFIGURATIONS (SELECT * FROM sys.Configurations). That <strong>is_dynamic</strong> value will come in handy. The Next time your manager asks you, &#8220;Does changing the max memory in SQL Server require a reboot?&#8221; you can look here and see the dynamic flag of 1 meaning, yes it&#8217;s dynamic so &#8220;no boss, we can change it on the fly.&#8221; Or see a value of 0 meaning, &#8220;Sorry boss, need to have an outage while we restart SQL Server).</p>
<h4><strong>But SP_CONFIGURE flushes the procedure cache!</strong></h4>
<p>No, it doesn&#8217;t. At least not in SQL 2005 and above. I don&#8217;t have access to SQL 2000 to verify that, but I believe it doesn&#8217;t there either. Something some people still say that used to be true in 6.5 and below (maybe 7.0 also, and possibly 2000 but I am pretty sure not.. test and see.. test and see..)</p>
<p>There, I gave you a few other basic knowledge items around sp_configure all to justify my shock, awe and desire to tell everyone that <strong>you don&#8217;t have to type the entire configuration name into sp_configure! </strong>Whoever said it&#8217;s the simple things in life had me in mind&#8230;</p>
<p><strong>Lesson learned: </strong>Visit books online on occassion. Even if you think you know it all and it is a simple feature. Always something new to learn.</p>
<h2>Also Check Out</h2>
<p>I have posted some other tips and tricks of items I wish I knew when starting out or earlier in my career. Some are technical how-to&#8217;s, some are DBA career related.</p>
<ul>
<li>Advice to beginning DBAs wondering, <a href="http://www.straightpathsql.com/blog/2009/3/5/where-do-i-start.html" target="_blank">&#8220;Where do I start?!?!&#8221;</a></li>
<li><a href="http://www.straightpathsql.com/blog/category/shrinking-transactions" target="_blank">Shrinking</a> &#8211; several posts on the topic.</li>
<li><a href="http://www.straightpathsql.com/blog/2008/12/31/troubleshooting-methodology.html" target="_blank">Troubleshooting Methodology</a> Woes (I also wrote an <a href="http://www.sqlservercentral.com/articles/Troubleshooting/66134/" target="_blank">article </a>for SQL Server Central on this topic)</li>
<li>Empirical Evidence</li>
<li><a href="http://www.straightpathsql.com/blog/2009/6/18/documentation.html" target="_blank">Documentation </a>(or how I learned to stop procrastinating and <span style="text-decoration: line-through;">l</span><span style="text-decoration: line-through;">ove</span> tolerate a <span style="text-decoration: line-through;">chore</span> necessary task)</li>
<li>A little<a href="http://www.straightpathsql.com/blog/2009/6/1/paranoid-control-freak-have-i-got-a-career-for-you.html" target="_blank"> Paranoia and Control Freak</a> attitude can help a DBA</li>
<li><a href="http://www.straightpathsql.com/blog/2009/3/16/checklists-recipes-and-algorithms.html" target="_blank">Checklists, Recipes and Algorithms</a> &#8211; Learning about these great tools from other professions (Pilots, Chefs and Doctors)</li>
<li><a href="http://www.straightpathsql.com/blog/2009/2/25/what-sql-instances-are-installed-on-my-network.html" target="_blank">How do I find all of my SQL Servers?</a> &#8211; Maybe after listening to us you&#8217;ll want to spend more time with the instances at your network. Check this link out to learn about a tool that I use to find all the SQL Servers in my network.</li>
<li><a href="http://www.straightpathsql.com/blog/2009/1/27/new-vendor-interview-with-an-annoying-dba.html" target="_blank">Questions to ask a software vendor</a> &#8211; Working with a new vendor with their own database? Here are some questions I ask them.</li>
<li><a href="http://www.straightpathsql.com/blog/2009/8/6/benchmarking-who-needs-it.html" target="_blank">Benchmarking&#8230; Who needs it?</a> &#8211; The answer, I hope you will agree, is everyone. Here I talk about how easy it is to do with tools you already have and a tool you can download free from codeplex.</li>
</ul>

<p><a class="a2a_dd addtoany_share_save" href="http://www.addtoany.com/share_save"><img src="http://www.straightpathsql.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share/Bookmark"/></a> </p>]]></content:encoded>
			<wfw:commentRss>http://www.straightpathsql.com/archives/2009/10/how-to-use-sp_configure-in-sql-server/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
