<?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>Allen Kinsel - SQL DBA &#187; SQL Server</title>
	<atom:link href="http://www.allenkinsel.com/Topics/sql-server/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.allenkinsel.com</link>
	<description>SQL Server, PASS, and other data mishaps</description>
	<lastBuildDate>Thu, 09 Sep 2010 15:01:25 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Shadows Rock, Filtering Platform not so much!</title>
		<link>http://www.allenkinsel.com/archive/2010/08/shadows-rock-filtering-platform-not-so-much/</link>
		<comments>http://www.allenkinsel.com/archive/2010/08/shadows-rock-filtering-platform-not-so-much/#comments</comments>
		<pubDate>Mon, 16 Aug 2010 12:15:34 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[Connections]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[Error]]></category>
		<category><![CDATA[Security]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/?p=459</guid>
		<description><![CDATA[RDP remote control (shadowing) of multiple sessions is a great way to allow geographically separated teams to work on the same Server console.  You can do this from task manager
 
Today I had a new install of windows 2008 that was rejecting the attempts at remote control, the error was &#187;remote control failed&#187;, nothing was logged in [...]]]></description>
			<content:encoded><![CDATA[<p>RDP remote control (shadowing) of multiple sessions is a great way to allow geographically separated teams to work on the same Server console.  You can do this from task manager</p>
<div id="attachment_460" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.allenkinsel.com/wp-content/uploads/2010/08/task-man.jpg"><img src="http://www.allenkinsel.com/wp-content/uploads/2010/08/task-man-300x176.jpg" class="size-medium wp-image-460 " title="task man" alt="Control your co-workers!" width="300" height="176" /></a><p class="wp-caption-text">Control your co-workers!</p></div>
<p> </p>
<p>Today I had a new install of windows 2008 that was rejecting the attempts at remote control, the error was &raquo;remote control failed&raquo;, nothing was logged in the System or Application event logs. In the Security event log was only one error: &laquo;The Windows Filtering Platform has blocked a bind to a local port&raquo;</p>
<p>After plenty of fiddling and making sure there was no &raquo;firewall&raquo; or reason for the filtering platform to be enabled, I came across this command I never knew existed &laquo;shadow&raquo;  </p>
<p>Apparently whatever had the filtering platform angry and blocking access was ok with that simple command.   So in this case going to a command window and running &laquo;shadow 3&raquo; worked perfectly, I could once again see both terminals and the windows filtering platform allowed me to actually work, instead of impeding me at every turn.</p>
<p>The Windows Filtering Platform on Server 2008 and 2008 R2 has been the culprit more times than I can count lately when the &laquo;gremlins&raquo; are inhabiting our servers, If only there were a way you could turn it off totally, but I guess that's sort of like Internet Explorer, it cant be unbundled from the OS.</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/06/sql-server-and-sspi-handshake-failed-error-hell/" title="Permanent link to this post">Sql Server and SSPI handshake failed error hell</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/" title="Permanent link to this post">Whose got my DAC?</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/" title="Permanent link to this post">Allowing effective developer access to SQL Server</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-active-directory-user-id-sid-mismapings/" title="Permanent link to this post">SQL Active Directory User ID SID Mismapings</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/using-aliases-in-sql-server/" title="Permanent link to this post">Using Aliases with SQL Server</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/08/shadows-rock-filtering-platform-not-so-much/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dont forget to vote for the PASS Summit Community Choice sessions</title>
		<link>http://www.allenkinsel.com/archive/2010/08/dont-forget-to-vote-for-the-pass-summit-community-choice-sessions/</link>
		<comments>http://www.allenkinsel.com/archive/2010/08/dont-forget-to-vote-for-the-pass-summit-community-choice-sessions/#comments</comments>
		<pubDate>Thu, 12 Aug 2010 15:01:46 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLPASS]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[Abstract Reviews]]></category>
		<category><![CDATA[Big Ideas]]></category>
		<category><![CDATA[Community Choice]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/?p=452</guid>
		<description><![CDATA[If you are a PASS member, on August 3rd you should have gotten an email inviting you to vote on four of the sessions to be presented at the 2010 PASS Summit. 
There are some great sessions up for selection, You can review them here.
If you havent voted yet, be on the lookout today for a reminder. You should [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/theresasthompson/2999130055/"><img src="http://www.allenkinsel.com/wp-content/uploads/2010/08/Vote-300x161.jpg" class="alignright size-medium wp-image-456" title="Vote" alt="Just do it!" width="300" height="161" /></a>If you are a <a href="http://www.sqlpass.org/AboutPASS/BecomeaMember.aspx" target="_blank">PASS member</a>, on August 3rd you should have gotten an email inviting you to vote on four of the sessions to be presented at the 2010 PASS Summit. </p>
<p>There are some great sessions up for selection, You can review them <a href="http://www.sqlpass.org/summit/na2010/Agenda/ProgramSessions/CommunityChoice.aspx" target="_blank">here</a>.</p>
<p>If you havent voted yet, be on the lookout today for a reminder. You should get an email with personal links to vote, it will only take a few minutes of your time and your opinion counts!</p>
<p>If you've already voted, I want to thank you, if not please take this time to do so.  If we can get enough community interest in this process I can see it growing and morphing into something more so while your opinion counts on the actual selections, your vote can also help shape the future way PASS does session selections.</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/07/more-on-pass-summit-community-choice-sessions-a-general-pass-update/" title="Permanent link to this post">More on PASS Summit Community Choice sessions &amp; a general PASS update</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/07/announcing-community-choice-sessions-at-the-pass-summit-2010/" title="Permanent link to this post">Community Choice Sessions at the PASS Summit 2010</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/05/pass-summit-call-for-speakers-now-open-or-enter-now-for-your-chance-to-win/" title="Permanent link to this post">PASS Summit Call for Speakers Now Open or &ldquo;enter now for your chance to win!&rdquo;</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/developing-better-sql-speakers/" title="Permanent link to this post">Developing Better SQL Speakers</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/05/sql-saturday-35-recap/" title="Permanent link to this post">SQL Saturday 35 Recap</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/08/dont-forget-to-vote-for-the-pass-summit-community-choice-sessions/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Sql Server and SSPI handshake failed error hell</title>
		<link>http://www.allenkinsel.com/archive/2010/06/sql-server-and-sspi-handshake-failed-error-hell/</link>
		<comments>http://www.allenkinsel.com/archive/2010/06/sql-server-and-sspi-handshake-failed-error-hell/#comments</comments>
		<pubDate>Thu, 17 Jun 2010 15:18:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[Connections]]></category>
		<category><![CDATA[Ramblings]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[Active Directory]]></category>
		<category><![CDATA[Error]]></category>
		<category><![CDATA[Logins]]></category>
		<category><![CDATA[SSPI]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/06/sql-server-and-sspi-handshake-failed-error-hell/</guid>
		<description><![CDATA[The infamous SSPI Failed error strikes again!
One of our SQL servers was generating these errors for &#171;some&#187; Windows logins but not all.
Error: 17806, Severity: 20, State: 2.
SSPI handshake failed with error code 0x8009030c while establishing a connection with integrated security; the connection has been closed. [CLIENT: 192.168.1.1]
Error: 18452, Severity: 14, State: 1.
Login failed for user [...]]]></description>
			<content:encoded><![CDATA[<h2>The infamous SSPI Failed error strikes again!</h2>
<p>One of our SQL servers was generating these errors for &laquo;some&raquo; Windows logins but not all.</p>
<p><span style="color: #ff0000;">Error: 17806, Severity: 20, State: 2.</span></p>
<p><span style="color: #ff0000;">SSPI handshake failed with error code 0x8009030c while establishing a connection with integrated security; the connection has been closed. [CLIENT: 192.168.1.1]</span></p>
<p><span style="color: #ff0000;">Error: 18452, Severity: 14, State: 1.</span></p>
<p><span style="color: #ff0000;">Login failed for user ''. The user is not associated with a trusted SQL Server connection. [CLIENT: 192.168.1.1]</span></p>
<p>After exhausting all of the normal troubleshooting for this error (accounts locked, disabled, Sql Service accts, bad connection strings, SPN's, etc.) I spent the next few hours learning more about the way SQL handles authentication requests than I had ever wanted to know.</p>
<h4>The Scenario –</h4>
<p>A couple of separate individual Windows ID's started generating these errors while attempting connections, all other windows logins were working properly. The connections were initially happening through applications, but also occurred through sqlcmd. When logged in to the server locally with the offending ID's the connections to SQL would succeed.</p>
<h4>The Troubleshooting process –</h4>
<p>Check all the regular SSPI issues, I wont bore you with the details as they are easily <a href="http://www.google.com/search?q=sspi++login+failed">searchable</a></p>
<ul>
<li>A relatively easy way of checking the &laquo;easy&raquo; authentication issues If possible/appropriate is to log into the SQL Server locally with the offending ID and fire up sqlcmd and connect to the server via sqlcmd –Sservername,port –E  (by specifying the port you force TCP/IP instead of LPC, thereby forcing the network into the equation)</li>
</ul>
<p>Verify whether the login is trying to use NTLM or Kerberos (many ways to do this but simplest is to see if there are any other KERBEROS connections on the machine)</p>
<ul>
<li><span style="color: #0000ff;">SELECT DISTINCT</span> auth_scheme <span style="color: #0000ff;">FROM</span> <span style="color: #00ff00;">sys.dm_exec_connections</span></li>
<li>If Kerberos is in use, there are a few additional things to verify related to SPN's, since only NTLM was in use on this server I skipped that</li>
</ul>
<p>Determine if the accounts were excluded from connecting to the machine through the network through a group policy or some other AD setting</p>
<p>After all of these checked out OK, I began to try and figure out what the error code 0x8009030c meant, turns out, its fairly obvious what the description is : sec_e_logon_denied.  This description was so helpful I thought about making this server into a boat anchor but, luckily for my employer the server room is located many miles away and has armed guards.</p>
<p>Since I knew we could logon locally to the SQL Server with the ID that SQL was rejecting with logon denied something else was trying to make my life miserable.</p>
<p>We didn't have logon failure security auditing turned on so, I had no way of getting a better error description, As luck would have it though this would prove instrumental in finding the root cause. To get a better error message, I found this handy <a href="http://support.microsoft.com/kb/109626/EN-US/">KB article </a>detailing steps needed to put net logon into debug mode.</p>
<h4>Say hello to my new best friend!  -- nltest.exe</h4>
<p>After downloading <a href="http://www.microsoft.com/downloads/details.aspx?familyid=49ae8576-9bb9-4126-9761-ba8011fabf38&amp;displaylang=en">nltest</a> &amp; using it to enable netlogon debugging on the SQL Server, I got this slightly better message in the netlogon.log file</p>
<p><span style="color: #3366ff;">06/15 14:15:39 [LOGON] SamLogon: Network logon of DOMAIN\USER from Laptop Entered</span></p>
<p><span style="color: #3366ff;">06/15 14:15:39 [CRITICAL] NlPrintRpcDebug: Couldn't get EEInfo for I_NetLogonSamLogonEx: 1761 (may be legitimate for 0xc0000064)</span></p>
<p><span style="color: #3366ff;">06/15 14:15:39 [LOGON] SamLogon: Network logon of DOMAIN\USER from Laptop Returns 0xC0000064</span></p>
<p>The error code 0XC0000064 maps to &laquo;NO_SUCH_USER&raquo;</p>
<p>Since I was currently logged in to the server with the ID that was returning no such user, something else was obviously wrong, and luckily at this point I knew it wasn't SQL.</p>
<p>Running &laquo;set log&raquo; on the server revealed that a local DC (call it DC1) was servicing the local logon request.</p>
<p>After asking our AD guys about DC1 and its synchronization status, as well as whether the user actually existed there, everything still looked OK.</p>
<p>After looking around a bit more I discovered this gem of a command for nltest to determine which DC will handle a logon request</p>
<p>C:\&gt;nltest /whowill:Domain Account</p>
<p><span style="color: #3366ff;">[16:32:45] Mail message 0 sent successfully (\MAILSLOT\NET\GETDC579)<br />
[16:32:45] Response 0: DC2 D:Domain A:Account (Act found)<br />
The command completed successfully</span></p>
<p>Even though this command returned &laquo;act found&raquo; it was returning from DC2.  (I dont exactly understand why the same account would authenticate against 2 different DC's based on a local desktop login or a SQL login but it apparently can)</p>
<p>After asking the AD guys about DC2 the light bulbs apparently went off for them as that server actually exists behind a different set of firewalls, in a totally different location. While DC2 would return a ping, the console wouldn't allow logons for some reason. After a quick reboot of DC2, and some magic AD pixie dust (I am not an AD admin, if it wasn't totally obvious from my newfound friend nltest) the windows Id's that were having trouble started authenticating against DC3 and our SSPI errors went away.</p>
<p>Interesting tidbit -- During troubleshooting, I found that this particular SQL Server was authenticating accounts against at least 5 different DC's. Some of this might be expected since there are different domains at play but, I haven't heard a final answer from the AD guys about whether it should work that way.</p>
<h4>The solution</h4>
<p>Reboot the misbehaving DC, of course there may be other ways to fix this by redirecting requests to a different DC without a reboot but, since it was misbehaving anyway, and the AD experts wanted to reboot so we went with that. A reboot of SQL would have likely solved this problem too but, I hate reboot fixes of issues, they always seem to come back!</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/" title="Permanent link to this post">Whose got my DAC?</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-active-directory-user-id-sid-mismapings/" title="Permanent link to this post">SQL Active Directory User ID SID Mismapings</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/" title="Permanent link to this post">Allowing effective developer access to SQL Server</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/using-aliases-in-sql-server/" title="Permanent link to this post">Using Aliases with SQL Server</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/05/special-houston-area-sql-server-group-meeting/" title="Permanent link to this post">Special Houston Area SQL Server group meeting</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/06/sql-server-and-sspi-handshake-failed-error-hell/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Allowing effective developer access to SQL Server</title>
		<link>http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/</link>
		<comments>http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/#comments</comments>
		<pubDate>Thu, 29 Apr 2010 14:56:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[SQL Developer]]></category>
		<category><![CDATA[Why developers hate me]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/</guid>
		<description><![CDATA[When creating a new application, after going through the entire business analysis &#38; requirements gathering process, normally you wind up with a datamodel that includes many tables and relationships.  By this time, depending on the size of the datamodel/system there has been considerable amounts of time invested on all sides.  We need a way of [...]]]></description>
			<content:encoded><![CDATA[<p>When creating a new application, after going through the entire business analysis &amp; requirements gathering process, normally you wind up with a datamodel that includes many tables and relationships.  By this time, depending on the size of the datamodel/system there has been considerable amounts of time invested on all sides.  We need a way of preserving this investment of time while still allowing developers to do their thing!</p>
<h6>Deploy</h6>
<p>Most shops have policies in place for what level of access developers can have in each environment.  In many places I've seen, developers are allowed DBO access in development, and some lesser access in the higher environments (read only usually).</p>
<p>After you've deployed the datamodel to the physical database in a development environment, before you grant the developer group dbo access consider all of the time/effort that has been spent making the datamodel what it is.  In order to allow the developers to do their jobs but not allow them to modify the actual table/schema layout you can grant a combinations of privileges.</p>
<p>Grant Alter Schema on the schemas where the developers will need to modify database objects (for instance stored procedures and functions)</p>
<p>Grant db_datareader --to allow read access</p>
<p>Grant db_datawriter --to allow write access</p>
<p>Grant Create Procedure, Function, Default, Etc  -- Allow developers to do whatever you are comfortable with</p>
<p>Deny Create Table in the database --This restricts all Table based DDL</p>
<p>Optional** Deny Create View, Function, Default,  in the database -- Restrict any create/alter permissions as needed. </p>
<p>Important** Alter Schema permissions will allow Alter of ANY object type in the schema that you havent explicitly used a Deny on</p>
<h6>Principle of least privilege</h6>
<p>This method has proven effective to allow developers to write Stored procs, Functions &amp; Views while still keeping the actual datamodel (tables and relationships usually) in pristine shape.   You could also mix and match your own grants/denys on certain object types to allow for unlimited configuration without granting the almighty DBO.  Yes, you might say that I'm a paranoid DBA who restricts permissions even in DEV!  Of course my great developers would never change a modeled database thereby forcing my hand into figuring out this lockdown of privileges</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/04/runaway-system-cache-increase-kills-sql/" title="Permanent link to this post">Runaway System Cache Increase Kills SQL</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/" title="Permanent link to this post">April Houston SQL Server Users group meeting</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/" title="Permanent link to this post">Whose got my DAC?</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/" title="Permanent link to this post">Convincing your boss to pay for your training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/" title="Permanent link to this post">Accessing Top Quality Training</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/04/allowing-effective-developer-access-to-sql-server/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Runaway System Cache Increase Kills SQL</title>
		<link>http://www.allenkinsel.com/archive/2010/04/runaway-system-cache-increase-kills-sql/</link>
		<comments>http://www.allenkinsel.com/archive/2010/04/runaway-system-cache-increase-kills-sql/#comments</comments>
		<pubDate>Wed, 21 Apr 2010 13:47:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[Memory]]></category>
		<category><![CDATA[Rants]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Paging]]></category>
		<category><![CDATA[Symantec]]></category>
		<category><![CDATA[Things that make you crazy]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/04/runaway-system-cache-increase-kills-sql/</guid>
		<description><![CDATA[Ran into this a while back, and we finally found a root cause so, I thought Id put it out here in hopes that it saves at least 1 person the amount of head bashing I had with it
Environment
Windows 2003 Enterprise R2 SP2 w/32GB RAM
SQL Server 2005 standard ed SP3 64bit active/passive cluster
We started seeing [...]]]></description>
			<content:encoded><![CDATA[<p>Ran into this a while back, and we finally found a root cause so, I thought Id put it out here in hopes that it saves at least 1 person the amount of head bashing I had with it</p>
<h6>Environment</h6>
<p>Windows 2003 Enterprise R2 SP2 w/32GB RAM</p>
<p>SQL Server 2005 standard ed SP3 64bit active/passive cluster</p>
<p>We started seeing this glorious message in the SQL Server Error log.</p>
<p><em>A significant part of sql server process memory has been paged out. This may result in performance degradation. Duration XX seconds. Working set (KB) XXX, committed (KB) XXX, memory utilization 0%</em></p>
<p>The message varied slightly but the essence was always the same.</p>
<p>This error message can be too common on systems where SQL memory is misconfigured or where something is unduly pressuring SQL for memory.  In this case a quick verification of the settings showed that everything was in order.  The first 2 times this happened it was the middle of the night during backups(in the SLA window), so no one really noticed a performance degradation.  We didn't think much of it at the time but in hindsight, we should have.</p>
<h6>The Failure</h6>
<p>Monday morning 8 AM, developer makes a bad update to the database, No problem I say, <a href="http://www.quest.com/litespeed-for-sql-server/">Litespeed</a> can rollback the transaction, So I start to copy the full db backup+tran logs off the server (~25gb) this is the way we process litespeed recoveries through the log reader.  About 3 minutes later the server became totally unresponsive, and the error about paging the SQL process memory was logged.  At the time I didn't put 2 and 2 together as this particular server runs a varied workload of about 1500 batches/sec and has anywhere from 1200-2500 connections open at a time, so It could have been anything!  After some further digging I figured out that the file copies were causing the sql memory to get paged out.  At the time I had never heard of a file copy causing an issue in SQL Server!</p>
<h6>The experts weigh in</h6>
<p>While looking at the issue 2 perfmon counters stuck out--&gt; Memory\Cached Bytes and Memory\Avail MBytes.  While file copies were happening the cache bytes counter would increase very quickly while the avail bytes counter would drop, once the available mbytes dropped to 0 sql server started to page memory out.  After a bit of paging, the errors were logged that SQL had its memory paged out and SQL  became unresponsive.  Since this was a high priority system, I did what any good SQL Server DBA would do, I contacted a few people in my network who may have seen this before.  Interestingly enough I got the exact same response from every one of them, &laquo;use <a href="http://support.microsoft.com/kb/970070/">lock pages in memory</a>&raquo; and don't use windows explorer to do huge file copies as this is a known &laquo;problem&raquo;.</p>
<p>Even though I trusted my sources of info, I had a hard time believing that file copies of sizes all the way down to 1GB would cause this sort of havoc without this being something Bing+Google would know about (different file sizes mattered, some sizes worked fine, some would cause the problem).</p>
<h6>Workarounds not welcome</h6>
<p>I had a valid workaround with lock pages in memory and not using explorer for file copies but, I don't normally like workarounds such as this on systems as important as this one is to us. After a few server rebuilds we finally figured out that we could reproduce this issue on any win2k3 R2 ent ed 64bit server, this would be the clue we finally needed to make a breakthrough.  After rebuilding the systems from scratch and loading no drivers except SAN we noticed that we couldn't cause the error!  So, after painstakingly adding each and every piece of our standard server build we realized that Symantec AV (10.1.9.9) was the cause.  Yes, another file system filter driver was misbehaving.</p>
<p>In looking back through the change communication, we ID'd where a new version of AV was pushed out and we just didn't hit the error soon enough after the installation to put 2 &amp; 2 together.  Since disabling AV wasn't an option we started trying to find a setting that specifically caused the problem and happened across a change that could be made and allow AV to run and SQL to not get paged out.  By unchecking the network scanning options, the windows cache no longer increases during a (network) file copy.  problem solved!!</p>
<p><a href="http://www.allenkinsel.com/wp-content/uploads/2010/04/SAV.jpg"><img src="http://www.allenkinsel.com/wp-content/uploads/2010/04/SAV_thumb.jpg" style="display: inline; border-width: 0px;" title="SAV" border="0" alt="SAV" width="244" height="159" /></a></p>
<p>Some time in the future vendors are going to figure out how to write good file system filter drivers, or they are going to stop trying to use them!  After fighting this issue for a few weeks (or was it months) I can only hope this happens sooner rather than later</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/" title="Permanent link to this post">SQL/Windows Clustering Stupidity</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/" title="Permanent link to this post">April Houston SQL Server Users group meeting</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/" title="Permanent link to this post">Whose got my DAC?</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/" title="Permanent link to this post">Convincing your boss to pay for your training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/" title="Permanent link to this post">Accessing Top Quality Training</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/04/runaway-system-cache-increase-kills-sql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>April Houston SQL Server Users group meeting</title>
		<link>http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/</link>
		<comments>http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/#comments</comments>
		<pubDate>Tue, 13 Apr 2010 14:16:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLPASS]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[HASSUG]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/</guid>
		<description><![CDATA[In Houston?  Hungry for lunch?  Want to learn SQL Server from an expert?  Head over to the Microsoft office and learn the top SQL mistakes and how to avoid them from Kevin Kline
Not in Houston?  or hungry?  there's always the live meeting option!
Here are the details from the HASSUG Site:
Houston Area SQL Server User Group [...]]]></description>
			<content:encoded><![CDATA[<p>In Houston?  Hungry for lunch?  Want to learn SQL Server from an expert?  Head over to the Microsoft office and learn the top SQL mistakes and how to avoid them from Kevin Kline</p>
<p>Not in Houston?  or hungry?  there's always the live meeting option!</p>
<p>Here are the details from the <a href="http://houston.sqlpass.org/" target="_blank">HASSUG</a> Site:</p>
<p><strong>Houston Area SQL Server User Group Monthly Meeting Reminder</strong><strong> </strong></p>
<p><strong>When:</strong> <strong>Tuesday, April 13, 2010 – 11:30am-1:00pm</strong><strong> </strong></p>
<p><strong>Where:</strong> Microsoft Houston Office</p>
<p>2000 W. Sam Houston Pkwy. S. #350</p>
<p>Houston, Texas  77042-3615</p>
<p><strong>Pizza and drinks provided by Idera.</strong><strong></strong></p>
<p>LiveMeeting Link:</p>
<p><a href="https://www.livemeeting.com/cc/usergroups/join?id=HASSUG_APR2010&amp;role=attend"><span style="text-decoration: underline;">https://www.livemeeting.com/cc/usergroups/join?id=HASSUG_APR2010&amp;role=attend</span></a></p>
<p>Conference Call for audio – 1-888-320-3585 (passcode 76027128)</p>
<p><strong></strong></p>
<p><strong>Topic: <strong>Top 10 Mistakes on SQL Server </strong></strong></p>
<p><strong>Speaker: Kevin Kline, Technical Strategy Manager, Quest; Immediate Past President of PASS (<a href="http://sqlblog.com/blogs/kevin_kline/default.aspx"><span style="text-decoration: underline;">blog</span></a> | <a href="http://www.twitter.com/kekline"><span style="text-decoration: underline;">twitter</span></a>)</strong></p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/" title="Permanent link to this post">Convincing your boss to pay for your training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/" title="Permanent link to this post">Accessing Top Quality Training</a>
<br /><a href="http://www.allenkinsel.com/archive/2009/11/a-new-blog-is-born/" title="Permanent link to this post">A new blog is born</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/developing-better-sql-speakers/" title="Permanent link to this post">Developing Better SQL Speakers</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/more-pass-speaker-thoughts/" title="Permanent link to this post">More PASS Speaker Thoughts</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/04/houston-sql-server-users-group-meeting/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Whose got my DAC?</title>
		<link>http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/</link>
		<comments>http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/#comments</comments>
		<pubDate>Thu, 04 Mar 2010 15:08:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[Connections]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[DAC]]></category>
		<category><![CDATA[Error]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/</guid>
		<description><![CDATA[What is the DAC?
The Dedicated Admin Connection, Commonly called the DAC is used to manage SQL Server when a regular connection wont succeed.  Here's what SQL Books Online (BOL) has to say about the DAC &#171;This diagnostic connection allows an administrator to access SQL Server to execute diagnostic queries and troubleshoot problems even when SQL [...]]]></description>
			<content:encoded><![CDATA[<h4>What is the DAC?</h4>
<p>The Dedicated Admin Connection, Commonly called the DAC is used to manage SQL Server when a regular connection wont succeed.  Here's what SQL Books Online (BOL) has to say about the DAC &laquo;This diagnostic connection allows an administrator to access SQL Server to execute diagnostic queries and troubleshoot problems even when SQL Server is not responding to standard connection requests.&raquo;</p>
<h4>DAC Errors</h4>
<p>Occasionally, while troubleshooting SQL servers in a large environment, especially one thats managed from many different geographic locations you could come up with this error, if more than 1 person is using the DAC.  It should also be noted this only happens if you have remote DAC enabled in your environment</p>
<p><span style="font-size: x-small; color: #ff0000;">Error 17810</span></p>
<p><span style="font-size: x-small; color: #ff0000;">Could not connect because the maximum number of '1' dedicated administrator connections already exists. Before a new connection can be made, the existing dedicated administrator connection must be dropped, either by logging off or ending the process. [CLIENT: 127.0.0.1]</span></p>
<p>Since I could still connect with a regular connection currently, I set out looking for a query to determine who was using the DAC connection.  I whipped this up, and since I couldnt find anything in search, I thought id blog it</p>
<p>select conn.session_id, sess.login_name, sess.nt_domain, sess.nt_user_name, conn.connect_time, conn.last_read, conn.last_write, sess.host_name, conn.client_net_address<br />
    from sys.dm_exec_connections conn<br />
    join sys.endpoints edp<br />
        on conn.endpoint_id = edp.endpoint_id<br />
    join sys.dm_exec_sessions sess<br />
        on sess.session_id = conn.session_id   <br />
    where edp.is_admin_endpoint = 1</p>
<p>This should return everything you need to know about who is using your DAC connection so you can ask them to disconnect, or KILL their connection.</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-active-directory-user-id-sid-mismapings/" title="Permanent link to this post">SQL Active Directory User ID SID Mismapings</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/using-aliases-in-sql-server/" title="Permanent link to this post">Using Aliases with SQL Server</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/" title="Permanent link to this post">Convincing your boss to pay for your training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/" title="Permanent link to this post">Accessing Top Quality Training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/" title="Permanent link to this post">SQL/Windows Clustering Stupidity</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/03/whose-got-my-dac/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Convincing your boss to pay for your training</title>
		<link>http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/</link>
		<comments>http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 14:11:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLPASS]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[Volunteer]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/</guid>
		<description><![CDATA[&#160;

Things are tight

It seems like budgets are being cut everywhere, and IT training seems to be one of the first places cut.&#160; In an earlier post I outlined where you could get a lot of valuable training for relatively little cost.&#160; In this post I will explore a few methods that have worked for me [...]]]></description>
			<content:encoded><![CDATA[<p align="center">&#160;</p>
<h2>
<p>Things are tight</p>
</h2>
<p>It seems like budgets are being cut everywhere, and IT training seems to be one of the first places cut.&#160; In an earlier <a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/">post</a> I outlined where you could get a lot of valuable training for relatively little cost.&#160; In this post I will explore a few methods that have worked for me over the years to get your boss to say YES to paying for you to refresh your fountain of knowledge.</p>
<h4>The direct approach</h4>
<p>It may seem obvious but, if you don't ask your employer, they cant agree to send you to a SQLSaturday, or to the annual SQLPASS Summit.&#160; So sometimes its just as simple as broaching the subject with your boss.&#160; But before you try that continue reading!</p>
<h4>Explain the ROI</h4>
<p>Many times the people who make the final decisions about training forget what a struggle it can be to not only stay current on technology but to actually excel with it.&#160; Last year PASS put together a very good list of <a href="http://summit2009.sqlpass.org/AboutSummit/ROI.aspx">ROI points</a>&#160; This could be used for any SQL event, make it work for you.</p>
<h4>Volunteer</h4>
<p>If you volunteer for <a href="http://sqlpass.org">SQLPASS</a> (at the local or national level) you may be eligible for a discount admission to the annual summit.&#160; This discount can range anywhere from 100$ all the way up to a full comp (free) admission.&#160; Armed with the discount, and your ROI documentation it can be quite a bit easier to convince your boss to send you to a weeks worth of invaluable training that they perceive to be discounted.</p>
<h4>
<p>Offer to partner</p>
</h4>
<p>A few years back this might have been unheard of but, I've recently decided to start trying this method to get approval for some training.&#160; Try to combine the ROI documentation with an offer to pick up 1/2 the tab for the training.&#160; For instance, split the cost, ask them to pay the airfare to a SQL Saturday, while you pick up the hotel, food and ground transportation.&#160; Another idea, offer to pay the airfare/conference registration(Free if you volunteer enough) and let them pick up the rest to send you to the SQLPASS Summit.&#160; Either way its a win-win for both parties, you get to make a small investment in your career, and it shows your employer your serious about that career. </p>
<h4>Mix and Match</h4>
<p>Hopefully you can take a few of these ideas and mix-n-match them to reach the ultimate goal of getting your desired education.</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/" title="Permanent link to this post">Accessing Top Quality Training</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/pass-tps-1/" title="Permanent link to this post">PASS TPS #1</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/call-for-program-committee-volunteers/" title="Permanent link to this post">Call for Program Committee Volunteers</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/your-relationship-with-your-professional-organization/" title="Permanent link to this post">Your relationship with your professional organization</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/program-committee-task-speaker-terms-revisited/" title="Permanent link to this post">Program committee task--Speaker terms revisited</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/03/convincing-your-boss-to-pay-for-your-training/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Accessing Top Quality Training</title>
		<link>http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/</link>
		<comments>http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/#comments</comments>
		<pubDate>Wed, 24 Feb 2010 15:00:00 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[SQLPASS]]></category>
		<category><![CDATA[Syndicated]]></category>
		<category><![CDATA[Training]]></category>
		<category><![CDATA[SQL Saturday]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/</guid>
		<description><![CDATA[Where did the Training go?
With the economy being what it is, many companies are cutting back on training budgets yet our need for knowledge as database professionals never stops.&#160; Luckily the SQL Server community is one of the liveliest around and there are solutions.
Online
I'd estimate that&#160; almost everyday of the week you can find live [...]]]></description>
			<content:encoded><![CDATA[<h2>Where did the Training go?</h2>
<p>With the economy being what it is, many companies are cutting back on training budgets yet our need for knowledge as database professionals never stops.&#160; Luckily the SQL Server community is one of the liveliest around and there are solutions.</p>
<h4>Online</h4>
<p>I'd estimate that&#160; almost everyday of the week you can find live webcasts about various subjects in the SQL Server arena, the problem here is that many of these top quality training events aren't well publicized.&#160; I never knew about them until joining <a href="http://twitter.com/sqlinsaneo">Twitter</a> a few years back.&#160; As it turns out, many SQL user groups around the world <a href="http://houston.sqlpass.org/">stream their meetings</a> online via live meeting, there are <a href="http://www.sqlpass.org/Community/VirtualChapters.aspx">PASS VC's</a> webcasts, <a href="http://www.vconferenceonline.com/shows/spring10/quest/register/multireg.asp?newmem=1">Vendor sponsored</a> webcasts, and the list goes on and on.</p>
<h4>
<p>Local Events</p>
</h4>
<p>Local events usually put on by your <a href="http://www.sqlpass.org/PASSChapters.aspx">Local PASS Chapter</a>, these are usually monthly events put on by your local PASS Chapter.&#160; The added bonus is that these events provide networking opportunities.&#160; </p>
<h4>
<p>Regional Events</p>
</h4>
<p>For the time being these usually are <a href="http://sqlsaturday.com/">SQL Saturdays</a>.&#160; Held at various metropolitan areas across the US these are currently one of the best bets going for very cheap, very good, education.&#160; I would highly recommend that you consider traveling to one of these if they are within a reasonable drive, or better still, a cheap flight&#160; </p>
<h4>National Events</h4>
<p>Generally speaking these are <a href="http://www.sqlpass.org/summit/na2010/">SQLPASS</a> and <a href="http://www.devconnections.com/">SQL Connections</a>.&#160; I'll just say that these are topflight, all in wonderful opportunities, and if you have the chance Id highly recommend that you attend, everything I said about the other training events, is 10 fold when dealing with a week long immersive opportunity.</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2009/11/a-new-blog-is-born/" title="Permanent link to this post">A new blog is born</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/pass-tps-1/" title="Permanent link to this post">PASS TPS #1</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/" title="Permanent link to this post">SQL/Windows Clustering Stupidity</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-active-directory-user-id-sid-mismapings/" title="Permanent link to this post">SQL Active Directory User ID SID Mismapings</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/02/call-for-program-committee-volunteers/" title="Permanent link to this post">Call for Program Committee Volunteers</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/02/accessing-top-quality-training/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>SQL/Windows Clustering Stupidity</title>
		<link>http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/</link>
		<comments>http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/#comments</comments>
		<pubDate>Thu, 18 Feb 2010 16:04:16 +0000</pubDate>
		<dc:creator>Allen Kinsel</dc:creator>
				<category><![CDATA[Rants]]></category>
		<category><![CDATA[SQL Server]]></category>
		<category><![CDATA[Clustering]]></category>
		<category><![CDATA[Rant]]></category>
		<category><![CDATA[Things that make you crazy]]></category>

		<guid isPermaLink="false">http://www.allenkinsel.com/?p=316</guid>
		<description><![CDATA[When is high availibility not? 
When its any version of SQL running on a clustered Windows 2003 Server or sql 2005 running on clustered Windows 2008 Server.  Seems that while you can dynamically add a disk and use it in SQL when your running a standalone server, if your running in a &#171;highly availiable&#187; cluster configuration you [...]]]></description>
			<content:encoded><![CDATA[<h3><a href="http://www.flickr.com/photos/callumalden/22897663/"><img src="http://www.allenkinsel.com/wp-content/uploads/2010/02/win98-300x225.jpg" alt="Win98 300x225" class="alignright size-medium wp-image-325" title="win98" alt="" width="300" height="225" /></a>When is high availibility not? </h3>
<p>When its any version of SQL running on a clustered Windows 2003 Server or sql 2005 running on clustered Windows 2008 Server.  Seems that while you can dynamically add a disk and use it in SQL when your running a standalone server, if your running in a &laquo;highly availiable&raquo; cluster configuration you have to take SQL offline to add the disk as a dependency in order to be able to use it within SQL.  Here's the <a href="http://msdn.microsoft.com/en-us/library/ms177447(SQL.90).aspx">proof</a> right from SQL books online.</p>
<p>Im sure there was a good reason to require this at the time but clearly this wasnt thought out in the grand scheme of taking 0 downtime.  Anytime a single server has a more highly availiable architecture than your system that is designed for high availibility --&gt;youre doing it wrong, Sorry someone had to say it</p>
<p>
<strong>Related posts</strong>:
<br /><a href="http://www.allenkinsel.com/archive/2010/02/sql-active-directory-user-id-sid-mismapings/" title="Permanent link to this post">SQL Active Directory User ID SID Mismapings</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/how-did-i-get-here/" title="Permanent link to this post">How did I get here?</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/how-do-you-do-disaster-recovery/" title="Permanent link to this post">How do you do Disaster Recovery</a>
<br /><a href="http://www.allenkinsel.com/archive/2010/01/using-aliases-in-sql-server/" title="Permanent link to this post">Using Aliases with SQL Server</a>
<br /><a href="http://www.allenkinsel.com/archive/2009/11/a-new-blog-is-born/" title="Permanent link to this post">A new blog is born</a>
</p>
]]></content:encoded>
			<wfw:commentRss>http://www.allenkinsel.com/archive/2010/02/sql-windows-clustering-stupidity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
