<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Microsoft SQL Server troubleshooting</title><subtitle type="html" /><id>http://blogs.msdn.com/joaol/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/joaol/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2008-12-02T16:41:00Z</updated><entry><title>SQL Server 2008 Premier Workshop (Porto)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/11/18/sql-server-2008-premier-workshop-porto.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/11/18/sql-server-2008-premier-workshop-porto.aspx</id><published>2009-11-18T16:25:37Z</published><updated>2009-11-18T16:25:37Z</updated><content type="html">&lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008PremierWorkshopPorto_E6F3/image_2.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="image" border="0" alt="image" src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008PremierWorkshopPorto_E6F3/image_thumb.png" width="536" height="190" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p align="center"&gt;&lt;b&gt;SQL Server 2008&lt;/b&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;b&gt;Technical Overview&lt;/b&gt;&lt;/p&gt;  &lt;p align="center"&gt;&lt;b&gt;High Availability and Performance Optimization&lt;/b&gt;&lt;/p&gt;  &lt;p align="center"&gt;From 12 to 13 November 2009&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Session summary:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Day 1&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;SQL Server 2008 High availability and performance troubleshooting&lt;/p&gt;  &lt;p&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Log Shipping Setup/Configuration    &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Mirror Setup/Configuration     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Cluster Setup/Configuration     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 high availability/reliability     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 200x upgrade to SQL Server 2008     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Performance Monitoring     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Overview of new performance monitor tools/functionalities     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Find and diagnose active performance issues     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Analyze performance issues in offline mode &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Technical Highlights &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;/strong&gt;    &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Cluster versus SQL mirror implementation     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Advantages and tradeoffs of most common SQL high availability scenarios     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Mirror setup and configuration     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Log shipping planning and implementation     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Mixed scenarios combining cluster and mirror     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Maintenance and backup strategies     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Disaster recovery options     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 200x upgrade discussion based on most common scenarios    &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Data Collector     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Management Data Warehouse     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Performance and Configuration Reports     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Activity Monitor     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Graphical ShowPlan     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server Profiler     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Resource Governor     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; XEvents     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Dynamic Management Views     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Database Engine Tuning Advisor &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Day 2 &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;SQL Server 2008 technical overview&lt;/p&gt;  &lt;p&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Declarative Management Framework    &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Peer to Peer Replication     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Power Shell Integration     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SSMS Intellisense     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Transparent Data Encryption     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Auditing     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Data compression     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Management Data Warehouse     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 Resource governor     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Virtualization with SQL Server 2008     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server File Stream &lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Technical Highlights &lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;     &lt;br /&gt;&lt;/strong&gt;•&amp;#160;&amp;#160;&amp;#160; Peer to Peer Replication improvements     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Benefits and cautions using TDE     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Improve compliance and security using Auditing     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Data compression versus backup compression     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Using Resource governor to control and prioritize workloads     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; Using data collector to easily identify performance problems     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; SQL Server 2008 virtualization benefits and precautions     &lt;br /&gt;•&amp;#160;&amp;#160;&amp;#160; File Stream benefits, recommendations and best practices &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Session slides:&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/embedicon.aspx/P%c3%bablica/SQL%20Server%202008%20Permier%20Session%20Porto/Server%202008%20both.pdf" target="_blank"&gt;SQL Server 2008 Premier Session Porto.zip&lt;/a&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9924348" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2005 RTM/SP Setup hangs when displaying patching passive node message</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/10/19/sql-server-2005-rtm-sp-setup-hangs-when-displaying-patching-passive-node-message.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/10/19/sql-server-2005-rtm-sp-setup-hangs-when-displaying-patching-passive-node-message.aspx</id><published>2009-10-19T10:56:50Z</published><updated>2009-10-19T10:56:50Z</updated><content type="html">&lt;p&gt;If admin shares are disable on both nodes of the cluster task scheduler might be visible remotely but creating a remote task using task scheduler also hangs.&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Check the if the following key exists and remove it or change value to 1 and reboot machine:&lt;/p&gt;  &lt;p&gt;   &lt;br /&gt;Hive: HKEY_LOCAL_MACHINE    &lt;br /&gt;Key: SYSTEM\CurrentControlSet\Services\LanManServer\Parameters    &lt;br /&gt;Name: AutoShareServer    &lt;br /&gt;Data Type: REG_DWORD    &lt;br /&gt;Value: 0    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://en.wikipedia.org/wiki/Administrative_share" href="http://en.wikipedia.org/wiki/Administrative_share"&gt;http://en.wikipedia.org/wiki/Administrative_share&lt;/a&gt; – Administrative share&lt;/p&gt;  &lt;p&gt;SQL installation log file last lines should be:   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;(...)   &lt;br /&gt;10/15/2009 00:32:13.207 Patching available passive node: node_name    &lt;br /&gt;10/15/2009 00:32:13.238 Waiting for first completed passive node    &lt;br /&gt;10/15/2009 00:32:13.254 Patching passive node: node_name    &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;Normal installation log:   &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;(...)   &lt;br /&gt;11/13/2008 17:05:07.428 Patching available passive node: remote_nome_name    &lt;br /&gt;11/13/2008 17:05:07.429 Patching passive node: remote_nome_name    &lt;br /&gt;11/13/2008 17:05:07.530 Task Scheduler: Created remote folder for product instance target &lt;a href="file:///\\remote_nome_name"&gt;\\remote_nome_name&lt;/a&gt;    &lt;br /&gt;(…)&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9909014" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2008 does not start after SP1 with ETW enabled</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/09/30/sql-server-2008-does-not-start-after-sp1-with-etw-enabled.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/09/30/sql-server-2008-does-not-start-after-sp1-with-etw-enabled.aspx</id><published>2009-09-30T19:51:04Z</published><updated>2009-09-30T19:51:04Z</updated><content type="html">&lt;p&gt;In case you have just deployed SQL Server 2008 SP1 on a IA64 machine and SQL Server doesn’t start check if you have ETW tracing using MSSQLSERVER provider enabled.&lt;/p&gt;  &lt;p&gt;SQL Server error log last lines are listed below and no further info is displayed after resource database build info:&lt;/p&gt;  &lt;p&gt;SQL Server error log:&lt;/p&gt;  &lt;p&gt;(…)   &lt;br /&gt;2009-09-18 11:48:45.28 spid6s SQL Trace ID 1 was started by login &amp;quot;sa&amp;quot;.    &lt;br /&gt;2009-09-18 11:48:45.28 spid6s Starting up database 'mssqlsystemresource'.    &lt;br /&gt;2009-09-18 11:48:45.34 spid6s The resource database build version is 10.00.2531. This is an informational message only. No user action is required.&lt;/p&gt;  &lt;p&gt;(…)&lt;/p&gt;  &lt;p&gt;No messages are logged on event viewer and process needs to be killed manually using task manager. Capturing a memory dump shows at least 2 threads with similar callstack:&lt;/p&gt;  &lt;p&gt;(…)&lt;/p&gt;  &lt;p&gt;Child-SP Child-BSP RetAddr Call Site   &lt;br /&gt;(…)&lt;/p&gt;  &lt;p&gt;00000000`287ed940 00000000`287f0c58 00000000`01125610 sqlservr!EventInternal&amp;lt;Spinlock&amp;lt;149,1,0&amp;gt; &amp;gt;::Wait+0x250   &lt;br /&gt;00000000`287ed940 00000000`287f0be0 00000000`01867d20 sqlservr!FInitDCOM+0x260    &lt;br /&gt;00000000`287ed9b0 00000000`287f0bb0 00000000`05116d50 sqlservr!CreateInfoSetReaderExNoCheck+0x50    &lt;br /&gt;00000000`287ed9d0 00000000`287f0b78 00000000`05118080 sqlservr!CreateInfoSetReaderEx+0x50    &lt;br /&gt;00000000`287eda00 00000000`287f0b10 00000000`05a68230 sqlservr!CTraceETW::FindTemplate+0x670    &lt;br /&gt;00000000`287eda70 00000000`287f0a98 00000000`76b0b040 sqlservr!CTraceETW::ControlCallback+0x310    &lt;br /&gt;00000000`287edbd0 00000000`287f0a38 00000000`76b16800 ntdll!RegisterGuidsApiCallback+0x140    &lt;br /&gt;00000000`287edc30 00000000`287f09b8 00000000`76b16960 ntdll!EtwpUpdateEnableInfoAndCallback+0x180    &lt;br /&gt;00000000`287edc70 00000000`287f0958 00000000`76b1ae50 ntdll!EtwpRegisterProvider+0x120    &lt;br /&gt;00000000`287edd20 00000000`287f0918 00000000`76b135e0 ntdll!EtwNotificationRegister+0x90    &lt;br /&gt;00000000`287edd20 00000000`287f0898 00000000`05a68d80 ntdll!EtwRegisterTraceGuidsW+0x140    &lt;br /&gt;00000000`287edda0 00000000`287f0820 00000000`05a6ae80 sqlservr!CTraceETW::Startup+0x620    &lt;br /&gt;00000000`287ef9b0 00000000`287f0808 00000000`019b7dc0 sqlservr!CTraceETW::StartupTask+0x20    &lt;br /&gt;(…)&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;(…)   &lt;br /&gt;Child-SP Child-BSP RetAddr Call Site    &lt;br /&gt;00000000`164ae3c0 00000000`164b2300 00000000`76b37940 ntdll!RtlpWaitOnCriticalSection+0x3e0    &lt;br /&gt;00000000`164ae410 00000000`164b22c0 00000000`76b1adf0 ntdll!RtlEnterCriticalSection+0x180    &lt;br /&gt;00000000`164ae410 00000000`164b2280 00000000`76b135e0 ntdll!EtwNotificationRegister+0x30    &lt;br /&gt;00000000`164ae410 00000000`164b2200 000006fa`fd503b60 ntdll!EtwRegisterTraceGuidsW+0x140    &lt;br /&gt;00000000`164ae490 00000000`164b2190 000006fa`fdc57ee0 shell32!DllMain+0x180    &lt;br /&gt;00000000`164ae4b0 00000000`164b2138 000006fa`fdc582d0 shell32!__DllMainCRTStartup+0x220    &lt;br /&gt;00000000`164ae5d0 00000000`164b2108 00000000`76b247c0 shell32!_DllMainCRTStartup+0x50    &lt;br /&gt;00000000`164ae5d0 00000000`164b2020 00000000`76b280c0 ntdll!LdrpRunInitializeRoutines+0x440    &lt;br /&gt;00000000`164ae740 00000000`164b1f68 00000000`76b27300 ntdll!LdrpLoadDll+0x620    &lt;br /&gt;00000000`164ae9d0 00000000`164b1ed0 00000000`76a0fed0 ntdll!LdrLoadDll+0x1e0    &lt;br /&gt;00000000`164aec40 00000000`164b1e48 000006fa`fed061f0 kernel32!LoadLibraryExW+0x670    &lt;br /&gt;00000000`164aecb0 00000000`164b1de8 000006fa`fed05ca0 ole32!CClassCache::CDllPathEntry::LoadDll+0x190    &lt;br /&gt;00000000`164aecb0 00000000`164b1d60 000006fa`fed03f00 ole32!CClassCache::CDllPathEntry::Create_rl+0xe0    &lt;br /&gt;00000000`164aece0 00000000`164b1ce0 000006fa`fed0a350 ole32!CClassCache::CClassEntry::CreateDllClassEntry_rl+0x1e0    &lt;br /&gt;00000000`164aef20 00000000`164b1c60 000006fa`fed09ad0 ole32!CClassCache::GetClassObjectActivator+0x4d0    &lt;br /&gt;00000000`164aef50 00000000`164b1c08 000006fa`fed0d6e0 ole32!CClassCache::GetClassObject+0x90    &lt;br /&gt;00000000`164aef90 00000000`164b1be8 000006fa`fed0f850 ole32!CCGetClassObject+0x40    &lt;br /&gt;00000000`164aef90 00000000`164b1b20 000006fa`feeb8ea0 ole32!CServerContextActivator::GetClassObject+0x470    &lt;br /&gt;00000000`164af010 00000000`164b1ab8 000006fa`fed12280 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x440    &lt;br /&gt;00000000`164af040 00000000`164b1a78 000006fa`fed110d0 ole32!CApartmentActivator::GetClassObject+0xe0    &lt;br /&gt;00000000`164af050 00000000`164b1a30 000006fa`fed10ff0 ole32!CProcessActivator::GCOCallback+0xb0    &lt;br /&gt;00000000`164af060 00000000`164b19d8 000006fa`fed10cd0 ole32!CProcessActivator::AttemptActivation+0x70    &lt;br /&gt;00000000`164af060 00000000`164b1950 000006fa`fed10a00 ole32!CProcessActivator::ActivateByContext+0x110    &lt;br /&gt;00000000`164af070 00000000`164b1918 000006fa`feeb8ea0 ole32!CProcessActivator::GetClassObject+0xe0    &lt;br /&gt;00000000`164af080 00000000`164b18b0 000006fa`fed0edb0 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x440    &lt;br /&gt;00000000`164af0b0 00000000`164b1840 000006fa`feeb8ea0 ole32!CClientContextActivator::GetClassObject+0x1f0    &lt;br /&gt;00000000`164af300 00000000`164b17d0 000006fa`fed155c0 ole32!ActivationPropertiesIn::DelegateGetClassObject+0x440    &lt;br /&gt;00000000`164af330 00000000`164b16c8 000006fa`fecfdf30 ole32!ICoGetClassObject+0x9c0    &lt;br /&gt;00000000`164afd10 00000000`164b1600 000006fa`fecfe910 ole32!CComActivator::DoGetClassObject+0x2d0    &lt;br /&gt;00000000`164afd20 00000000`164b15c0 00000000`01126000 ole32!CoGetClassObject+0x50    &lt;br /&gt;00000000`164afd20 00000000`164b15a0 00000000`0112bd40 sqlservr!GetLuxorClassFactory+0x70    &lt;br /&gt;00000000`164afd30 00000000`164b1560 00000000`04297a80 sqlservr!LoadDCOM+0x1e0    &lt;br /&gt;00000000`164afd40 00000000`164b1520 00000000`0612e2d0 sqlservr!StartUp::WaitForTempdbLocked+0x120    &lt;br /&gt;00000000`164afd50 00000000`164b13c0 00000000`019b7dc0 sqlservr!initCM+0x610    &lt;br /&gt;(….)&lt;/p&gt;  &lt;p&gt;0:026&amp;gt; !locks   &lt;br /&gt;CritSec ntdll!LdrpLoaderLock+0 at 0000000076d18e20    &lt;br /&gt;WaiterWoken No    &lt;br /&gt;LockCount 3    &lt;br /&gt;RecursionCount 2    &lt;br /&gt;OwningThread 1064    &lt;br /&gt;EntryCount 0    &lt;br /&gt;ContentionCount 8    &lt;br /&gt;*** Locked    &lt;br /&gt;CritSec ntdll!EtwProvCritSect+0 at 0000000076d1d940    &lt;br /&gt;WaiterWoken No    &lt;br /&gt;LockCount 1    &lt;br /&gt;RecursionCount 1    &lt;br /&gt;OwningThread 120c à thread 26    &lt;br /&gt;EntryCount 0    &lt;br /&gt;ContentionCount 1    &lt;br /&gt;*** Locked&lt;/p&gt;  &lt;p&gt;So basically second thread that is responsible to initialize DCom and signal it but that was locked because ETW logging critical section was owned by second thread. Second thread acquired ETW critical section but was waiting for DCom to be signaled. Basically a deadlock scenario between these 2 threads.&lt;/p&gt;  &lt;p&gt;There are 2 possible workarounds, first is to disable ETW tracing and enabling it after SQL has been started however in case SQL restarts or needs to failover that procedure needs to be manually applied. &lt;/p&gt;  &lt;p&gt;Another workaround would be to delete or rename the ETW configuration file (etwcnf.xml) located under the SQL Server instance BINN folder. This should disable SQL Server ETW trace. The ETW callback will fail before reaching the point where it waits for DCOM initialization. You should see the following error in SQL Server errorlog. SQL Server should start normally though. &lt;/p&gt;  &lt;p&gt;2009-09-22 10:38:29.03 Server&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Error: 8352, Severity: 16, State: 1.   &lt;br /&gt;2009-09-22 10:38:29.03 Server&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; Cannot find the requested trace template: id = 1.&lt;/p&gt;  &lt;p&gt;This problem should be addressed on SQL Server 2008 SP1 Cumulative Update 5&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9901395" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2008 Deep Dive Session</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/09/11/sql-server-2008-deep-dive-session.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/09/11/sql-server-2008-deep-dive-session.aspx</id><published>2009-09-11T19:05:53Z</published><updated>2009-09-11T19:05:53Z</updated><content type="html">&lt;p&gt;&lt;a href="http://co1piltwb.partners.extranet.microsoft.com/mcoeredir/mcoeredirect.aspx?linkId=12340098&amp;amp;s1=2ead8b1c-fff8-8f2b-5288-f7cb93d93e47"&gt;&lt;img border="0" alt="SQL Server 2008" src="http://www.microsoft.com/library/media/2070/portugal/msdn/media/sqlbanner.jpg" width="585" height="150" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Summary:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;– Higher Availability and scalability (Fail-over clustering, mirroring) &lt;/p&gt;  &lt;p&gt;– Manageability and Administration (Resource governor, Policy Based Management and Server Group Management) &lt;/p&gt;  &lt;p&gt;– Virtualization, Storage Savings (virtualization, Data Compression and TDE) &lt;/p&gt;  &lt;p&gt;– Performance and Auditing(Partitioning, Partition Aligned Indexed Views, Auditing, File Stream) &lt;/p&gt;  &lt;p&gt;–Troubleshooting and Optimization (Performance Data Collection, X-Events, Data Tuning Wizard)&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Session slides:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;a href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target="_blank"&gt;SQL Server 2008 Deep Dive Slides.zip&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Session labs/demos:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;&lt;a href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target="_blank"&gt;SQL Server 2008 Deep Dive Demos.zip&lt;/a&gt;&lt;/font&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9894258" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2005 performance problems due grow of TokenAndPermUserStore cache</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/07/20/sql-server-2005-performance-problems-due-grow-of-tokenandpermuserstore-cache.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/07/20/sql-server-2005-performance-problems-due-grow-of-tokenandpermuserstore-cache.aspx</id><published>2009-07-20T18:35:29Z</published><updated>2009-07-20T18:35:29Z</updated><content type="html">&lt;p&gt;TokenAndPermUserStore is one of the many caches present in the SQL Server 2005 memory architecture. As the name implies, this cache stores various security related information used by the SQL Server Engine.&lt;/p&gt;  &lt;p&gt;To find out the amount of memory consumed by this token cache, you can query the DMV’s as follows:&lt;/p&gt;  &lt;p&gt;SELECT SUM(single_pages_kb + multi_pages_kb) AS &amp;quot;SecurityTokenCacheSize(kb)&amp;quot; &lt;/p&gt;  &lt;p&gt;FROM sys.dm_os_memory_clerks&lt;/p&gt;  &lt;p&gt;WHERE name = 'TokenAndPermUserStore'&lt;/p&gt;  &lt;p&gt;Typical symptoms:&lt;/p&gt;  &lt;p&gt;1. Queries which normally finish faster take a long time&lt;/p&gt;  &lt;p&gt;2. CPU usage of SQL Server process is relatively higher. CPU usage could come down after remaining high for a period of time.&lt;/p&gt;  &lt;p&gt;3. Connections from your applications keep increasing (specifically in connection pool environments)&lt;/p&gt;  &lt;p&gt;4. You encounter connection or query timeouts&lt;/p&gt;  &lt;p&gt;Possible workarounds (assuming that you are running SQL Server 2005 SP2 build &amp;gt;= 9.00.3179:&lt;/p&gt;  &lt;p&gt;1. Use Trace flag -T4618 to restrict the number of entries maintained in the TokenAndPermUserStore cache. This trace flag was introduced in SQL Server 2005 SP2. You can use Trace Flag –T4610 in conjunction with –T4618 to relax the limit on number of entries in the cache. Also -T4610 increases the number of buckets in the hash tables used to maintain this cache. &lt;/p&gt;  &lt;p&gt;2. Execute the command &lt;i&gt;DBCC FREESYSTEMCACHE ('TokenAndPermUserStore') &lt;/i&gt;at regular intervals to obtain relief (this is useful to prove that you area really experiencing TokenAndPermUserStore cache grow problem)&lt;/p&gt;  &lt;p&gt;3. Use some of the best practices mentioned in the above articles to reduce the cache growth (e.g. Parameterize ad-hoc queries, forced parameterization, avoiding recompiles, etc).&lt;/p&gt;  &lt;p&gt;With SP3 there is a new option to control TokenAndPermUserStore cache store and avoid this problem. Please see more details on the following KB article:&lt;/p&gt;  &lt;p&gt;959823 How to customize the quota for the TokenAndPermUserStore cache store in SQL Server 2005 Service Pack 3   &lt;br /&gt;&lt;a href="http://support.microsoft.com/default.aspx?scid=kb;EN-US;959823"&gt;http://support.microsoft.com/default.aspx?scid=kb;EN-US;959823&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;On SQL Server 2008 this cache mechanism has been improved anyway you might noticed 2 new advanced configuration options in &lt;a href="http://msdn.microsoft.com/en-us/library/ms189631(SQL.100).aspx"&gt;sp_configure&lt;/a&gt; named “&lt;i&gt;access check cache bucket count&lt;/i&gt;” and “&lt;i&gt;access check cache quota&lt;/i&gt;&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9841789" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>How to reduce paging of buffer pool memory in the 64-bit SQL Server 2005 Standard version of SQL Server</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/07/14/how-to-reduce-paging-of-buffer-pool-memory-in-the-64-bit-version-of-sql-server.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/07/14/how-to-reduce-paging-of-buffer-pool-memory-in-the-64-bit-version-of-sql-server.aspx</id><published>2009-07-14T16:36:19Z</published><updated>2009-07-14T16:36:19Z</updated><content type="html">&lt;p&gt;SQL Server 2005 SP2 introduces a new warning message that indicate that working set (RAM resident portion of SQL Server) has been paged out. This is a common problem that points to excessive paging that leads to potential severe performance problems. The following warning message is logged on SQL Server 2005 error log file:&lt;/p&gt;  &lt;p&gt;(…)&lt;/p&gt;  &lt;p&gt;A significant part of sql server process memory has been paged out. This may result in a performance degradation. Duration: 0 seconds. Working set (KB): 42988&amp;lt;c/&amp;gt; committed (KB): 105584&amp;lt;c/&amp;gt; memory utilization: 40%.&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160;&amp;#160; &lt;/p&gt;  &lt;p&gt;(…)&lt;/p&gt;  &lt;p&gt;The signaled trim allows SQL Server to properly remove the oldest references from the BPool (LRU) and maintain optimal performance for the overall server load. The Self Trim and Hard Trim activities can trigger the SQL Server error log message indicating that a significant portion of the SQL Server memory has been placed in the page file and generally leads to performance problems.&lt;/p&gt;  &lt;p&gt;Typical scenarios that this could happen are described here - &lt;a title="http://support.microsoft.com/kb/918483" href="http://support.microsoft.com/kb/918483"&gt;http://support.microsoft.com/kb/918483&lt;/a&gt; - How to reduce paging of buffer pool memory in the 64-bit version of SQL Server&lt;/p&gt;  &lt;p&gt;On this article it’s mentioned a method to prevent Windows from paging out the buffer pool memory of SQL Server memory by locking the memory that is allocated for the buffer pool in physical memory. However this method only applies for SQL Server 2005 Enterprise Edition not for SQL Server 2005 Standard Edition.&lt;/p&gt;  &lt;p&gt;We got a lot of feedback from customers who wanted to have support for this in SQL Server Standard Edition too.&amp;#160; So we are very pleased to announce that it will be available in SQL Server 2005 and SQL Server 2008 Standard Edition too (as of SQL Server 2005 SP3 CU4 and SQL Server 2008 SP1 CU2).&amp;#160; As with everything do not just enable this option by default but carefully plan and test.&lt;/p&gt;  &lt;p&gt;More information on this can be found on &lt;a href="http://blogs.msdn.com/psssql/archive/2009/04/24/sql-server-locked-pages-and-standard-sku.aspx"&gt;http://blogs.msdn.com/psssql/archive/2009/04/24/sql-server-locked-pages-and-standard-sku.aspx&lt;/a&gt;    &lt;br /&gt;Slava Oks did a great job in explaining the Lock Pages In Memory (and AWE) mechanism on &lt;a href="http://blogs.msdn.com/slavao/archive/2005/04/29/413425.aspx"&gt;http://blogs.msdn.com/slavao/archive/2005/04/29/413425.aspx&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/slavao/archive/2005/08/31/458545.aspx"&gt;http://blogs.msdn.com/slavao/archive/2005/08/31/458545.aspx&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9833132" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server Resource IsAlive Troubleshooting</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/04/20/sql-server-resource-isalive-troubleshooting.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/04/20/sql-server-resource-isalive-troubleshooting.aspx</id><published>2009-04-20T19:27:13Z</published><updated>2009-04-20T19:27:13Z</updated><content type="html">&lt;h6&gt;&amp;#160;&lt;/h6&gt;  &lt;p&gt;When SQL Server is deployed on cluster environment there is an associated IsAlive that is responsible to check if SQL Server is online accepting new connections. &lt;/p&gt;  &lt;p&gt;cluster.log:&lt;/p&gt;  &lt;p&gt;(…)[sqsrvres] checkODBCConnectError: sqlstate = 08001; native error = 6; message = [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets](…)&lt;/p&gt;  &lt;p&gt;On multi SQL Server instance environments with mixed versions of SQL Server deployed SQL Is Alive dll is unique and match highest version of SQL Server deployed on cluster environment. For example:&lt;/p&gt;  &lt;p&gt;SQL Server 2008 – c:\windows\system32\sqsrvres.dll should be 10.00.xxx&lt;/p&gt;  &lt;p&gt;SQL Server 2005 – c:\windows\system32\sqsrvres.dll should be 9.00.xxx&lt;/p&gt;  &lt;p&gt;SQL Server 2000 – c:\windows\system32\sqsrvres.dll should be 8.00.xxx&lt;/p&gt;  &lt;p&gt;Starting with SQL Server 2005 is possible to enable a registry key to enable Is Alive to log extended info to cluster.log in order to troubleshoot SQL Check Alive problems.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/TechNetExclusiveSessionsSQLServer2008_ED86/regkey_2.jpg"&gt;&lt;img title="regkey" border="0" alt="regkey" src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/TechNetExclusiveSessionsSQLServer2008_ED86/regkey_thumb.jpg" width="440" height="257" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Be aware that in case you have previously deployed SQL Server 2008 in case you remove it don’t remove SQL Server Native Client 10.0 or Is alive will start failing. sqsrvres.dll version does not rollback so it’s always directly linked to SQL Native Client Provider (in SQL 2005) and SQL Server Native Client 10.0 (in SQL Server 2008), so ensure that these providers aren’t removed.&lt;/p&gt;  &lt;p&gt;In case check alive only fails on specific node and you want to troubleshoot that problem you can manually change default Looks Alive and Is Alive so SQL keeps trying to startup on that node for long time so you troubleshoot that problem.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/TechNetExclusiveSessionsSQLServer2008_ED86/clip_image001_2.jpg"&gt;&lt;img title="clip_image001" border="0" alt="clip_image001" src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/TechNetExclusiveSessionsSQLServer2008_ED86/clip_image001_thumb.jpg" width="498" height="311" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;After that you can open command prompt using same credentials than cluster service account (because IsAlive is a children process of cluster service) and try to connect to SQL Server using:&lt;/p&gt;  &lt;p&gt;sqlcmd.exe –S server_name –E (for SQL 2005 and 2008)&lt;/p&gt;  &lt;p&gt;osql.exe –S server_name –E (for SQL Server 2000)&lt;/p&gt;  &lt;p&gt;Hope this helps understanding some techniques how to troubleshoot SQL Server Cluster installation problems due IsAlive failures.&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9556883" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>Exclusive Session – SQL Server Performance Troubleshooting</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/04/20/exclusive-session-sql-server-performance-troubleshooting.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/04/20/exclusive-session-sql-server-performance-troubleshooting.aspx</id><published>2009-04-20T19:23:00Z</published><updated>2009-04-20T19:23:00Z</updated><content type="html">&lt;P&gt;&lt;STRONG&gt;&lt;A href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/ExclusiveSessionSQLServerPerformanceTrou_F477/itpros_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/ExclusiveSessionSQLServerPerformanceTrou_F477/itpros_2.jpg"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=itpros border=0 alt=itpros src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/ExclusiveSessionSQLServerPerformanceTrou_F477/itpros_thumb.jpg" width=387 height=161 mce_src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/ExclusiveSessionSQLServerPerformanceTrou_F477/itpros_thumb.jpg"&gt;&lt;/A&gt; &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Session Summary &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;•SQL Server 2000 Performance Troubleshooting &lt;/P&gt;
&lt;P&gt;•SQL Server 2005 Performance Troubleshooting &lt;/P&gt;
&lt;P&gt;•SQL Server 2008 Performance Troubleshooting &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Session slides: &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target=_blank mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24"&gt;Troubleshooting techniques.zip&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Session labs/demos: &lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Demo 1 – Sql Server 2000 performance troubleshooting &lt;/P&gt;
&lt;P&gt;(how to guide available at &lt;A href="http://blogs.msdn.com/joaol/archive/2008/12/31/sql-server-profiler-trace-parsing-tool-build-performance-reports-based-on-profiler-traces-only.aspx)" mce_href="http://blogs.msdn.com/joaol/archive/2008/12/31/sql-server-profiler-trace-parsing-tool-build-performance-reports-based-on-profiler-traces-only.aspx)"&gt;http://blogs.msdn.com/joaol/archive/2008/12/31/sql-server-profiler-trace-parsing-tool-build-performance-reports-based-on-profiler-traces-only.aspx)&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Demo 2 – Sql Server 2005 performance troubleshooting &lt;/P&gt;
&lt;P&gt;(how to guide will be published sooner) &lt;/P&gt;
&lt;P&gt;Demo 3 – Sql Server 2008 performance troubleshooting &lt;/P&gt;
&lt;P&gt;(how to guide will be published sooner) &lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target=_blank mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24"&gt;DemosSQLPerf.zip&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9556875" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>How to build a virtual SQL Server 2008 clustered environment with Hyper-V</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/03/20/how-to-build-a-virtual-sql-server-2008-clustered-environment-with-hyper-v.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/03/20/how-to-build-a-virtual-sql-server-2008-clustered-environment-with-hyper-v.aspx</id><published>2009-03-20T21:17:00Z</published><updated>2009-03-20T21:17:00Z</updated><content type="html">&lt;P&gt;1.&amp;nbsp;Install your virtual clients running Windows 2008 Enterprise and make sure they have basic connectivity to each other.&amp;nbsp; I used the node names and joined them to the contoso domain.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;NODEV2&lt;BR&gt;&amp;nbsp;&amp;nbsp;NODEV3&lt;/P&gt;
&lt;P&gt;2.&amp;nbsp;Install a free iSCSI SAN software to emulate a iSCSI SAN on host machine or new virtual machine, there are many vendors (&lt;A href="http://starwindsoftware.com/" mce_href="http://starwindsoftware.com/"&gt;http://starwindsoftware.com/&lt;/A&gt;, &lt;A href="http://sourceforge.net/project/showfiles.php?group_id=90725" mce_href="http://sourceforge.net/project/showfiles.php?group_id=90725"&gt;http://sourceforge.net/project/showfiles.php?group_id=90725&lt;/A&gt;, etc)&lt;/P&gt;
&lt;P&gt;3.&amp;nbsp;Create a new iSCSI target using the "Microsoft iSCSI Target Software' snap-in in Administrative Tools&lt;/P&gt;
&lt;P&gt;&amp;nbsp;3a. &amp;nbsp;Add 2 drives to the target.&amp;nbsp;&amp;nbsp; The quorum has to be at least 500MB&lt;BR&gt;&amp;nbsp;3b. &amp;nbsp;Set the IQN to a simple name.&amp;nbsp;&amp;nbsp; I used SANCON1 (Properties | iSCSI Initiators )&lt;BR&gt;&amp;nbsp;3c.&amp;nbsp;Make sure to disable 'Enforce Idle Timeout' on the Target properties - Advanced tab&lt;BR&gt;&amp;nbsp;3d.&amp;nbsp;I found it easier to use the CHAP authentication so you may want to use CHAP&lt;BR&gt;&amp;nbsp;3e.&amp;nbsp;Setup a second IQN with a simple name like RDORR2 and use that to configure the 2nd node's iSCSI initiator.&amp;nbsp; You want each node to have a unique connection path to the drive is reserved on each node and failover will work.&amp;nbsp;&amp;nbsp; If you use the same IQN you get 'already connected' errors and you can't failover and see the media.&lt;/P&gt;
&lt;P&gt;4.&amp;nbsp;On one virtual machine use the Administrator Tools | iSCSC Initiator to connect to the target.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;4a.&amp;nbsp;Discovery Tab&amp;nbsp; (MACHINE.contoso.com)&lt;BR&gt;&amp;nbsp;4b.&amp;nbsp;Use the Advanced option to set the Local Adapter to the iSCSI initiator&lt;BR&gt;&amp;nbsp;4c.&amp;nbsp;General Tab | Change - Use the simple &lt;BR&gt;&amp;nbsp;4d.&amp;nbsp;Targets Tab | Refresh and Use the Logon button to establish a automatic connection&lt;/P&gt;
&lt;P&gt;&amp;nbsp;Reference: &lt;A href="http://edge.technet.com/Media/How-to-setup-iSCSI-on-Windows-Server-2008-11-mins/" mce_href="http://edge.technet.com/Media/How-to-setup-iSCSI-on-Windows-Server-2008-11-mins/"&gt;http://edge.technet.com/Media/How-to-setup-iSCSI-on-Windows-Server-2008-11-mins/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;5.&amp;nbsp;Use disk manager to add the two drives (iSCSI) to the (one) virtual machine (MBR - Basic disk - Simple partitions - NTFS required)&lt;/P&gt;
&lt;P&gt;8.&amp;nbsp;Run the Administrator Tools | Failover Cluster Management and 'Validate a Configuration'&lt;/P&gt;
&lt;P&gt;9.&amp;nbsp;Create a cluster.&amp;nbsp; (Single node for the virtual machine with the iSCSI connected drives)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;9a.&amp;nbsp;Add the smallest iSCSI disk to you cluster storage and make sure status is ONLINE&lt;BR&gt;&amp;nbsp;9b.&amp;nbsp;On the cluster node itself | Right mouse | More Actions | Cluster Quorum - Node and Disk Majority - Establish the quorum drive for the cluster&lt;BR&gt;&amp;nbsp;9d.&amp;nbsp;Add the other iSCSI disk to the cluster storage and make sure status is ONLINE&amp;nbsp; (Available Storage)&lt;/P&gt;
&lt;P&gt;10.&amp;nbsp;Install SQL (new failover installation) &lt;BR&gt;&amp;nbsp;&lt;BR&gt;&amp;nbsp;Note:&amp;nbsp; Use a local copy of setup so the network activity does not get interrupted and cause a feature to fail installation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;10a.&amp;nbsp;Use the iSCSI locations for the database so it becomes a shared resource.&amp;nbsp;&amp;nbsp; When you get to the Cluster Resource Group add your new cluster group name&lt;BR&gt;&amp;nbsp;10b.&amp;nbsp;Pick the features you want carefully as some can't be added later.&lt;BR&gt;&amp;nbsp;10c.&amp;nbsp;I only bound to IPV4 to avoid binding issues with IPV6 for a simple setup scenario.&amp;nbsp;&amp;nbsp; &lt;/P&gt;
&lt;P&gt;11.&amp;nbsp;Add the second node (Add Node)&amp;nbsp; to the cluster (Windows) - Failover Cluster Manager&lt;/P&gt;
&lt;P&gt;12.&amp;nbsp;Add the second node (Add Node) to the cluster (SQL) - SQL Server Setup&lt;/P&gt;
&lt;P&gt;Note:&amp;nbsp; Connect using the node name or (.) to connect to the cluster regardless of the cluster running state&lt;/P&gt;
&lt;P&gt;Note: Currently using SQL Server 2008 clustered instance on virtual environment is not supported, only if it's a standalone. &lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9493066" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author><category term="Cluster" scheme="http://blogs.msdn.com/joaol/archive/tags/Cluster/default.aspx" /></entry><entry><title>How to install SQL Server 2008 with SP1 built-in (slipstream installation)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/03/20/how-to-install-sql-server-2008-with-sp1-built-in-slipstream-installation.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/03/20/how-to-install-sql-server-2008-with-sp1-built-in-slipstream-installation.aspx</id><published>2009-03-20T17:43:00Z</published><updated>2009-03-20T17:43:00Z</updated><content type="html">&lt;P&gt;This guide will demonstrate how to create new source media that will slipstream the original source media and SQL Server 2008 Service Pack 1. Once you have created this drop, you can install SQL Server 2008 SP1 in a single step! Besides that how SQL Server Setup UI shows that splitstream installation is being used:&lt;/P&gt;
&lt;P&gt;1. Download from SQL Server 2008 SP1:&lt;/P&gt;
&lt;P&gt;SQLServer2008SP1-KB959337-IA64-ENU.exe &lt;BR&gt;SQLServer2008SP1-KB959337-x64-ENU.exe &lt;BR&gt;SQLServer2008SP1-KB959337-x86-ENU.exe &lt;BR&gt;&amp;nbsp;&lt;BR&gt;2. Extract the packages as follows: &lt;/P&gt;
&lt;P&gt;SQLServer2008SP1-KBxxxxxx-IA64-ENU.exe /x:c:\SQLServer2008\PCU &lt;BR&gt;SQLServer2008SP1-KBxxxxxx-x64-ENU.exe /x:c:\SQLServer2008\PCU &lt;BR&gt;SQLServer2008SP1-KBxxxxxx-x86-ENU.exe /x:c:\SQLServer2008\PCU &lt;/P&gt;
&lt;P&gt;Ensure you complete this step for all architectures to ensure the original media is updated correctly. &lt;/P&gt;
&lt;P&gt;3. Copy your original SQL Server 2008 source media to c:\SQLServer2008 &lt;/P&gt;
&lt;P&gt;4. Copy SQLSupport.MSI from the PCU extracted location to original source media location: &lt;/P&gt;
&lt;P&gt;robocopy c:\SQLServer2008\PCU\x86\setup\1033 c:\SQLServer2008\x86\Setup sqlsupport.msi &lt;BR&gt;robocopy c:\SQLServer2008\PCU\x64\setup\1033 c:\SQLServer2008\x64\Setup sqlsupport.msi &lt;BR&gt;robocopy c:\SQLServer2008\PCU\ia64\setup\1033 c:\SQLServer2008\ia64\Setup sqlsupport.msi &lt;/P&gt;
&lt;P&gt;Note: robocopy is a tool that will copy entire folder contents&lt;/P&gt;
&lt;P&gt;5. Copy Setup.exe and Setup.rll from the PCU extracted location to original source media location &lt;/P&gt;
&lt;P&gt;robocopy C:\SQLServer2008\PCU c:\SQLServer2008 Setup.exe &lt;BR&gt;robocopy C:\SQLServer2008\PCU c:\SQLServer2008 Setup.rll &lt;BR&gt;&amp;nbsp;&lt;BR&gt;6. Copy all files not the folders, except the Microsoft.SQL.Chainer.PackageData.dll, in c:\SQLServer2008\PCU\&amp;lt;architecture&amp;gt; to C:\SQLServer2008RTM \&amp;lt;architecture&amp;gt; to update the original files. &lt;/P&gt;
&lt;P&gt;robocopy C:\SQLServer2008\pcu\x86 C:\SQLServer2008\x86 /XF Microsoft.SQL.Chainer.PackageData.dll &lt;BR&gt;robocopy C:\SQLServer2008\pcu\x64 C:\SQLServer2008\x64 /XF Microsoft.SQL.Chainer.PackageData.dll &lt;BR&gt;robocopy C:\SQLServer2008\pcu\ia64 C:\SQLServer2008\ia64 /XF Microsoft.SQL.Chainer.PackageData.dll &lt;BR&gt;&amp;nbsp;&lt;BR&gt;7. Create a file called defaultsetup.ini with the following contents:&lt;/P&gt;
&lt;P&gt;;SQLSERVER2008 Configuration File&lt;/P&gt;
&lt;P&gt;[SQLSERVER2008]&lt;/P&gt;
&lt;P&gt;PCUSOURCE=".\PCU"&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;8. Copy the defaultsetup.ini file to the following locations:&lt;/P&gt;
&lt;P&gt;C:\SQLServer2008\x86 &lt;BR&gt;C:\SQLServer2008\x64 &lt;BR&gt;C:\SQLServer2008\ia64 &lt;BR&gt;&amp;nbsp;&lt;BR&gt;9. Now run the setup.exe as you normally would.&lt;/P&gt;
&lt;P&gt;How can I tell I am slipstreaming:&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;1) You should see the "Update Setup Media Language Rule" on the Installation Rules dialog:&lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://blogs.msdn.com/photos/joaol/images/9492580/original.aspx" mce_src="http://blogs.msdn.com/photos/joaol/images/9492580/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;2) You should see the Action indicate it is being slipstreamed and the Slipstream node should be shown: &lt;/P&gt;
&lt;P&gt;&lt;IMG src="http://blogs.msdn.com/photos/joaol/images/9492581/original.aspx" mce_src="http://blogs.msdn.com/photos/joaol/images/9492581/original.aspx"&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9492585" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2008 Premier Session</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/03/05/sql-server-2008-premier-session.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/03/05/sql-server-2008-premier-session.aspx</id><published>2009-03-05T13:07:00Z</published><updated>2009-03-05T13:07:00Z</updated><content type="html">&lt;P&gt;&lt;IMG style="WIDTH: 478px; HEIGHT: 87px" src="http://blogs.msdn.com/photos/joaol/images/9459538/original.aspx" width=478 height=87 mce_src="http://blogs.msdn.com/photos/joaol/images/9459538/original.aspx"&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;STRONG&gt;Session Summary&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR&gt;•SQL Server 2008 Scalability&lt;/P&gt;
&lt;P&gt;•SQL Server 2008 Top Features&lt;/P&gt;
&lt;P&gt;•Resource Governor&lt;/P&gt;
&lt;P&gt;•Data Collector&lt;/P&gt;
&lt;P&gt;•SQL Server 2008 Virtualization scenarios&lt;/P&gt;
&lt;P&gt;•SQL Server 2008 High Availability&lt;/P&gt;
&lt;P&gt;•SQL Server 2008 upgrade&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Session slides:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24 "&gt;SQL2008Premier.zip&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;Session labs/demos:&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;Demo 1 – Data Collector&lt;/P&gt;
&lt;P&gt;Demo 2 – Resource Governor&lt;/P&gt;
&lt;P mce_keep="true"&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24 "&gt;Demos.zip&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Fell free to raise questions, comments or any other suggestion regarding this session.&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9459540" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2008 FilesStream – DevDays 2009</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2009/02/25/sql-server-2008-filesstream-devdays-2009.aspx" /><id>http://blogs.msdn.com/joaol/archive/2009/02/25/sql-server-2008-filesstream-devdays-2009.aspx</id><published>2009-02-25T14:16:00Z</published><updated>2009-02-25T14:16:00Z</updated><content type="html">&lt;P&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;IMG src="http://blogs.msdn.com/photos/joaol/images/9443935/original.aspx" width=520 height=106 mce_src="http://blogs.msdn.com/photos/joaol/images/9443935/original.aspx"&gt; &lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;&lt;STRONG&gt;Session Summary&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•Challenges for using unstructured data&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•The Filestream Feature - An Overview&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•Filestream and T-SQL&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•OpenSqlFilestream&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•System.Data.SqlTypes.SqlFileStream&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•Filestream access patterns&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;•Filestream transactional semantics&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;&lt;STRONG&gt;Session slides:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target=_blank mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24 "&gt;&lt;FONT size=2 face=Calibri&gt;DAT203.zip&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;&lt;STRONG&gt;Session labs/demos:&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 1 – FileStream Setup&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 2 – FileStream Programming T-SQL&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 3 – OpenSQLFileStream – Native&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 4 – SqlFileStream - .Net – Read operation&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 5 – SqlFileStream - .Net – Insert Operation&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Demo 6 – FileStream LoadBalancing&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24" target=_blank mce_href="http://cid-8d91c7d1c0e21f3c.skydrive.live.com/browse.aspx/P%c3%bablica?authkey=yK8TVr!6GsM%24 "&gt;&lt;FONT size=2 face=Calibri&gt;Demos.zip&lt;/FONT&gt;&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;Fell free to raise questions, comments or any other suggestion regarding this session.&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT size=2 face=Calibri&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9443929" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server profiler trace parsing tool – Build performance reports based on profiler traces only</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2008/12/31/sql-server-profiler-trace-parsing-tool-build-performance-reports-based-on-profiler-traces-only.aspx" /><id>http://blogs.msdn.com/joaol/archive/2008/12/31/sql-server-profiler-trace-parsing-tool-build-performance-reports-based-on-profiler-traces-only.aspx</id><published>2008-12-31T14:43:00Z</published><updated>2008-12-31T14:43:00Z</updated><content type="html">&lt;P&gt;Imagine the scenario that you application has just been deployed into production environment and SQL Server is extremely slow consuming too many resources. Sometimes a single store procedure can be easily identified by looking into DMV’s or just profiler trace. But how you can summarize entire profiler trace in simple reports that aggregate all store procedures executions, many scenarios performance problems of store procedures are not related with single execution but with aggregation of execution per minute. A store procedure that takes 1 second to execute could be a problem if is running more than 60 times per minute… how to figure out that…simple… use ReadTrace utility to parse profiler traces:&lt;/P&gt;
&lt;P&gt;1) Download and install RML Utilities (usually referred as Read Trace) from &lt;A title=http://www.microsoft.com/downloads/details.aspx?FamilyId=7EDFA95A-A32F-440F-A3A8-5160C8DBE926&amp;amp;displaylang=en href="http://www.microsoft.com/downloads/details.aspx?FamilyId=7EDFA95A-A32F-440F-A3A8-5160C8DBE926&amp;amp;displaylang=en" mce_href="http://www.microsoft.com/downloads/details.aspx?FamilyId=7EDFA95A-A32F-440F-A3A8-5160C8DBE926&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=7EDFA95A-A32F-440F-A3A8-5160C8DBE926&amp;amp;displaylang=en&lt;/A&gt; (works on SQL Server 2000, 2005 and 2008)&lt;/P&gt;
&lt;P&gt;2) Open RML Cmd Prompt and use the following syntax to start parsing your profiler trace file(s):&lt;/P&gt;
&lt;P&gt;Readtrace.exe –S"server_name" –E -d"database_name" –I"profiler_trace.trc"&lt;/P&gt;
&lt;P&gt;Note: ReadTrace will import profiler trace into a database in order to aggregate and normalize all statements, you can use a remote or local SQL Server instance for this purpose.&lt;/P&gt;
&lt;P&gt;3) After previous point execution Reporter should open automatically displaying main report based profiler trace analysis, you can export all reports and sub-reports to excel files&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_2.png" mce_href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_2.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image border=0 alt=image src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb.png" width=520 height=448 mce_src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb.png"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;4)&lt;/P&gt;
&lt;P&gt;I typically use the tool to summarize performance by SQL statement.&amp;nbsp; ReadTrace will "normalize" the SQL statements by replacing constants with placeholders.&amp;nbsp; This lets you identify which SQL statements are using the most resources. Report below is the sub-report that shows top 10 resource consuming statements. On this specific case is possible to notice that top 1 statement is responsible for more than 30% total SQL Server cpu utilization. Is possible to drill down even more each statement to find summary of all executions along the time for same statement, executions plans being used (if profiler trace has captured these events)&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb_11_2.png" mce_href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb_11_2.png"&gt;&lt;IMG style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; DISPLAY: inline; BORDER-TOP: 0px; BORDER-RIGHT: 0px" title=image_thumb_11 border=0 alt=image_thumb_11 src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb_11_thumb.png" width=516 height=488 mce_src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServerprofilertraceparsingtoolBuildpe_A4C0/image_thumb_11_thumb.png"&gt;&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;5) One great functionality is that ReadTrace normalizes SP/statements so even same store procedure is being called with different parameters will be aggregate on same group since it’s ‘skeleton’ will be the same.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9258400" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author></entry><entry><title>SQL Server 2008 – Performance counters registry hive consistency fails on non English Operating Systems</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2008/12/18/sql-server-2008-performance-counters-registry-hive-consistency-fails-on-non-english-operating-systems.aspx" /><id>http://blogs.msdn.com/joaol/archive/2008/12/18/sql-server-2008-performance-counters-registry-hive-consistency-fails-on-non-english-operating-systems.aspx</id><published>2008-12-18T13:53:00Z</published><updated>2008-12-18T13:53:00Z</updated><content type="html">&lt;P&gt;Trying to install SQL Server 2008 on a non English OS and setup is being blocked by this rule, however looking to performance counters everything looks fine. On Operating Systems pt-PT (Portuguese) setups is trying to look for HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\016 which don’t exist, setup should be looking for HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\0816 (0816 is LCID code for Portuguese, 009 is LCID code for English OS).&lt;/P&gt;
&lt;P&gt;This problem is currently being corrected and should be available soon a correction. In the meantime workaround is quite simple, export HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\0816 to *.reg file, rename all entries of 0816 by 016 and import it again to registry, rerun SQL Server 2008 setup successful and finally remove ghost folder 016.&lt;/P&gt;
&lt;P&gt;Setup error:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008Performancecountersregistry_9923/sql_2.jpg" mce_href="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008Performancecountersregistry_9923/sql_2.jpg"&gt;&lt;IMG title=sql style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; DISPLAY: inline; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=383 alt=sql src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008Performancecountersregistry_9923/sql_thumb.jpg" width=510 border=0 mce_src="http://blogs.msdn.com/blogfiles/joaol/WindowsLiveWriter/SQLServer2008Performancecountersregistry_9923/sql_thumb.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;As soon more I have more updates about correction that is being implemented I will update this blog entry.&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9235877" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author><category term="SQL Server 2008" scheme="http://blogs.msdn.com/joaol/archive/tags/SQL+Server+2008/default.aspx" /></entry><entry><title>SQL Server 2008 installation aborts due an access denied</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/joaol/archive/2008/12/02/sql-server-2008-installation-aborts-due-an-access-denied.aspx" /><id>http://blogs.msdn.com/joaol/archive/2008/12/02/sql-server-2008-installation-aborts-due-an-access-denied.aspx</id><published>2008-12-02T19:41:00Z</published><updated>2008-12-02T19:41:00Z</updated><content type="html">&lt;P&gt;Trying to install SQL Server 2008 on a standalone environment using an administrator account and getting an access denied? The problem could happen in case you have removed Local Administrator from ‘Debug privileges’ on local security policies or just because your local domain GPO removes it.&lt;/P&gt;
&lt;P&gt;SQL Server installation log:&lt;/P&gt;
&lt;P&gt;(…)&lt;/P&gt;
&lt;P&gt;The Detail.txt indicates 3 "Access is Denied" errors. See below for the relevant extract: &lt;BR&gt;2008-09-19 09:20:25 SQLEngine: : Checking Engine checkpoint 'GetSqlServerProcessHandle' &lt;BR&gt;2008-09-19 09:20:25 SQLEngine: --SqlServerServiceSCM: Waiting for nt event 'Global\sqlserverRecComplete' to be created &lt;BR&gt;2008-09-19 09:20:27 SQLEngine: --SqlServerServiceSCM: Waiting for nt event 'Global\sqlserverRecComplete' or sql process handle to be signaled &lt;BR&gt;2008-09-19 09:20:27 Slp: Configuration action failed for feature SQL_Engine_Core_Inst during timing ConfigRC and scenario ConfigRC. &lt;BR&gt;2008-09-19 09:20:27 Slp: Access is denied &lt;BR&gt;2008-09-19 09:20:27 Slp: Configuration action failed for feature &lt;STRONG&gt;SQL_Engine_Core_Inst during timing ConfigRC and scenario ConfigRC. &lt;BR&gt;2008-09-19 09:20:27 Slp: System.ComponentModel.Win32Exception: Access is denied &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at&lt;/STRONG&gt; &lt;STRONG&gt;System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)&lt;/STRONG&gt; &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Diagnostics.Process.GetProcessHandle(Int32 access, Boolean throwIfExited) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Diagnostics.Process.OpenProcessHandle() &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at System.Diagnostics.Process.get_Handle() &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlServerServiceBase.WaitSqlServerStart(Process processSql) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlServerServiceSCM.StartSqlServer(String[] parameters) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlServerStartup.StartSQLServerForInstall(String sqlCollation, String masterFullPath, Boolean isConfiguringTemplateDBs) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineDBStartConfig.ConfigSQLServerSystemDatabases(EffectiveProperties properties, Boolean isConfiguringTemplateDBs, Boolean useInstallInputs) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineDBStartConfig.DoCommonDBStartConfig(ConfigActionTiming timing) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlEngine.SqlEngineDBStartConfig.Install(ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcb) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlConfigBase.PrivateConfigurationBase.Execute(ConfigActionScenario scenario, ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcbCurrent) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlConfigBase.SqlFeatureConfigBase.Execute(ConfigActionScenario scenario, ConfigActionTiming timing, Dictionary`2 actionData, PublicConfigurationBase spcbCurrent) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.ExecuteAction(String actionId) &lt;BR&gt;2008-09-19 09:20:27 Slp:&amp;nbsp;&amp;nbsp;&amp;nbsp; at Microsoft.SqlServer.Configuration.SqlConfigBase.SlpConfigAction.Execute(String actionId, TextWriter errorStream) &lt;BR&gt;&lt;STRONG&gt;2008-09-19 09:20:27 Slp: Exception: System.ComponentModel.Win32Exception. &lt;BR&gt;2008-09-19 09:20:27 Slp: Source: System. &lt;BR&gt;2008-09-19 09:20:27 Slp: Message: Access is denied.&lt;/STRONG&gt; &lt;BR&gt;2008-09-19 09:20:28 Slp: Sco: Attempting to write hklm registry key SOFTWARE\Microsoft\Microsoft SQL Server to file C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\20080919_085714\Registry_SOFTWARE_Microsoft_Microsoft SQL Server.reg_ &lt;BR&gt;2008-09-19 09:20:28 Slp: Sco: Attempting to write hklm registry key SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall to file C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\20080919_085714\Registry_SOFTWARE_Microsoft_Windows_CurrentVersion_Uninstall.reg_ &lt;BR&gt;2008-09-19 09:20:28 Slp: Sco: Attempting to write hklm registry key SOFTWARE\Microsoft\MSSQLServer to file C:\Program Files\Microsoft SQL Server\100\Setup Bootstrap\Log\20080919_085714\Registry_SOFTWARE_Microsoft_MSSQLServer.reg_ &lt;BR&gt;2008-09-19 09:20:42 Slp: Access is denied &lt;BR&gt;2008-09-19 09:20:42 Slp: Watson bucket for exception based failure has been created &lt;/P&gt;
&lt;P&gt;(…)&lt;/P&gt;
&lt;P&gt;The Summary returns following hex code: Configuration error code – 0x5D9A8C61&lt;/P&gt;
&lt;P&gt;(…)&lt;/P&gt;
&lt;P&gt;The access denied is raised on OpenProcess&amp;nbsp; WIN32 API, looking to MSDN WIN API description:&lt;/P&gt;
&lt;P&gt;HANDLE WINAPI OpenProcess( __in DWORD dwDesiredAccess, __in BOOL &lt;BR&gt;bInheritHandle, __in DWORD dwProcessId ); &lt;BR&gt;Parameters &lt;BR&gt;dwDesiredAccess [in] &lt;/P&gt;
&lt;P&gt;&lt;BR&gt;The access to the process object. This access right is checked against the security descriptor for the process. This parameter can be one or more of the process access rights &amp;lt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms684880(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms684880(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms684880(VS.85).aspx&lt;/A&gt;&amp;gt;. &lt;/P&gt;
&lt;P&gt;&lt;BR&gt;If the caller has enabled the SeDebugPrivilege privilege, the requested access is granted regardless of the contents of the security descriptor. &lt;BR&gt;bInheritHandle [in] If this value is TRUE, processes created by this process will inherit the handle. Otherwise, the processes do not inherit this handle. &lt;BR&gt;dwProcessId [in] The identifier of the local process to be opened. &lt;BR&gt;Return ValueIf the function succeeds, the return value is an open handle to the specified process. &lt;BR&gt;If the function fails, the return value is NULL. To get extended error information, call GetLastError &amp;lt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms679360(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms679360(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms679360(VS.85).aspx&lt;/A&gt;&amp;gt;. &lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Remarks &lt;BR&gt;To open a handle to another local process and obtain full access rights, you must enable the SeDebugPrivilege privilege. For more information, see Changing Privileges in a Token &amp;lt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms717797(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms717797(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms717797(VS.85).aspx&lt;/A&gt;&amp;gt;. &lt;BR&gt;The handle returned by the OpenProcess function can be used in any function that requires a handle to a process, such as the wait functions &lt;BR&gt;&amp;lt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms687069(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms687069(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms687069(VS.85).aspx&lt;/A&gt;&amp;gt;, provided the appropriate access rights were requested. &lt;BR&gt;When you are finished with the handle, be sure to close it using the CloseHandle &amp;lt;&lt;A href="http://msdn.microsoft.com/en-us/library/ms724211(VS.85).aspx" mce_href="http://msdn.microsoft.com/en-us/library/ms724211(VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/ms724211(VS.85).aspx&lt;/A&gt;&amp;gt; function.&lt;/P&gt;
&lt;P&gt;Note: Please reboot your machine after granting this permission, gpupdate /force is not enough, reboot is needed.&lt;/P&gt;
&lt;P&gt;If problem still persists please execute the following command to reset SCM settings to default values&lt;/P&gt;
&lt;P&gt;SC sdset winhttpautoproxysvc D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;LCRP;;;IU)(A;;LCRP;;;SU)&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=9165154" width="1" height="1"&gt;</content><author><name>joaol</name><uri>http://blogs.msdn.com/members/joaol.aspx</uri></author><category term="SQL Server 2008" scheme="http://blogs.msdn.com/joaol/archive/tags/SQL+Server+2008/default.aspx" /></entry></feed>