<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://sqlblog.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en"><title type="html">Lara Rubbelke</title><subtitle type="html">Interesting Things in the World of SQL Server</subtitle><id>http://sqlblog.com/blogs/lara_rubbelke/atom.aspx</id><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/default.aspx" /><link rel="self" type="application/atom+xml" href="http://sqlblog.com/blogs/lara_rubbelke/atom.aspx" /><generator uri="http://communityserver.org" version="2.1.61129.1">Community Server</generator><updated>2007-07-30T10:21:00Z</updated><entry><title>Enterprise Policy Management Framework on CodePlex</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx</id><published>2008-11-17T03:35:28Z</published><updated>2008-11-17T03:35:28Z</updated><content type="html">&lt;p&gt;It has been a long time since I have blogged, and I promise it is for a good reason.&amp;#160; The Enterprise Policy Management Framework has been published to CodePlex:&amp;#160; &lt;a href="http://www.codeplex.com/EPMFramework"&gt;Enterprise Policy Management Framework - Home&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;I will be presenting this solution at the PASS Summit this week.&amp;#160; Stop by on Friday at 1 pm to learn more and see the full solution in action.&amp;#160; &lt;/p&gt;  &lt;p&gt;The Enterprise Policy Management Framework is a reporting solution on the state of the enterprise against a desired state defined in a policy. Extend Policy-Based Management to all SQL Server instances in the enterprise. Centralize and report on the policy evaluation results. &lt;/p&gt;  &lt;p&gt;The Enterprise Policy Management Framework (EPM) is a solution to extend SQL Server 2008 Policy-Based Management to all versions of SQL Server in an enterprise, including SQL Server 2000 and SQL Server 2005. The EPM Framework will report the state of specified SQL Server instances against policies that define the defined intent, desired configuration, and deployment standards.&lt;/p&gt;  &lt;p&gt;When the Enterprise Policy Management Framework (EPM) is implemented, policies will be evaluated against specified instances of SQL Server through PowerShell. This solution will require at least one instance of SQL Server 2008. The PowerShell script will run from this instance through a SQL Server Agent job or manually through the PowerShell interface. The PowerShell script will capture the policy evaluation output and insert the output to a SQL Server table. SQL Server 2008 Reporting Services reports will deliver information from the centralized table. &lt;/p&gt;  &lt;p&gt;This solution requires the following components are configured in your environment. All SQL Server 2008 requirements listed below may be executed from and managed on the same instance:   &lt;br /&gt;&amp;#8226; SQL Server 2008 instance to store policies     &lt;br /&gt;&amp;#8226; SQL Server 2008 instance to act as the Central Management Server    &lt;br /&gt;&amp;#8226; SQL Server 2008 instance to execute the PowerShell script    &lt;br /&gt;&amp;#8226; SQL Server management database and policy history table to archive policy evaluation results    &lt;br /&gt;&amp;#8226; SQL Server 2008 Reporting Services to render and deliver policy history reports&lt;/p&gt;  &lt;p&gt;&lt;img alt="EPMReport.jpg" src="http://i3.codeplex.com/Project/Download/FileDownload.aspx?ProjectName=EPMFramework&amp;amp;DownloadId=49337" /&gt;&lt;/p&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Enterprise Policy Management Framework on CodePlex&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Enterprise Policy Management Framework on CodePlex%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx" target="_blank" title = "Email Enterprise Policy Management Framework on CodePlex"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx&amp;amp;title=Enterprise+Policy+Management+Framework+on+CodePlex" target="_blank" title = "Submit Enterprise Policy Management Framework on CodePlex to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx&amp;amp;phase=2" target="_blank" title = "Submit Enterprise Policy Management Framework on CodePlex to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx&amp;amp;title=Enterprise+Policy+Management+Framework+on+CodePlex" target="_blank" title = "Submit Enterprise Policy Management Framework on CodePlex to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx&amp;amp;title=Enterprise+Policy+Management+Framework+on+CodePlex" target="_blank" title = "Submit Enterprise Policy Management Framework on CodePlex to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/11/16/enterprise-policy-management-framework-on-codeplex.aspx&amp;amp;title=Enterprise+Policy+Management+Framework+on+CodePlex&amp;amp;;top=1" target="_blank" title = "Add Enterprise Policy Management Framework on CodePlex to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=9978" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry><entry><title>Evaluating Policies On Demand Through PowerShell</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx</id><published>2008-06-19T04:22:00Z</published><updated>2008-06-19T04:22:00Z</updated><content type="html">&lt;P&gt;&lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx" target=_blank&gt;In my previous blog&lt;/A&gt; I reviewed the different policy evaluation modes available in SQL Server 2008.&amp;nbsp; In this next installment I will detail how to initiate a policy on demand using PowerShell.&lt;/P&gt;
&lt;P&gt;PowerShell integration with SQL Server 2008 is getting more press lately.&amp;nbsp; &lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx" target=_blank&gt;In past blogs&lt;/A&gt; I noted a few resources to help learn PowerShell, and since that time additional resources (&lt;A href="http://blogs.technet.com/industry_insiders/pages/powershell-in-sql-server-2008.aspx"&gt;http://blogs.technet.com/industry_insiders/pages/powershell-in-sql-server-2008.aspx&lt;/A&gt; and &lt;A href="http://blogs.msdn.com/mwories/archive/2008/06/14/SQL2008_5F00_Powershell.aspx"&gt;http://blogs.msdn.com/mwories/archive/2008/06/14/SQL2008_5F00_Powershell.aspx&lt;/A&gt; to call out a few) continue to surface.&amp;nbsp; This blog series is focused on Policy Evaluation, so I will be specifically looking at the new PowerShell cmdlet available in SQL Server 2008 to support an on demand evaluation of policies.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;The cmdlet &lt;B&gt;Invoke-PolicyEvaluation&lt;/B&gt; will allow you to specify a policy (or set of policies) to be evaluated against a target server.&amp;nbsp; The general syntax is as follows:&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation [-Policy [(&amp;lt;string[]&amp;gt; | &amp;lt;Policy&amp;gt; | &amp;lt;FileInfo&amp;gt;)]] -TargetServerName &amp;lt;(string | ISfcConnection)&amp;gt;&amp;nbsp; [-TargetExpression&amp;nbsp; &amp;lt;string&amp;gt;] [-OutputXml] [-AdHocPolicyExecutionMode &amp;lt;AdHocPolicyExecutionMode&amp;gt;]&lt;/P&gt;
&lt;P&gt;To open the SQL Server PowerShell provider through Management Studio, right-click on the Server and select Start PowerShell.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;&lt;I&gt;Note: You can also add the SQL Server PowerShell provider into the main PowerShell.&amp;nbsp; Open PowerShell and run the following commands to load the SQL Server snap-ins.&amp;nbsp; These are documented incorrectly in SQL Server 2008 RC0 BOL.&lt;/I&gt;&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;add-pssnapin SqlServerCmdletSnapin100&lt;/P&gt;
&lt;P&gt;add-pssnapin SqlServerProviderSnapin100&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Once you are in PowerShell, we can execute our commands to evaluate a policy.&amp;nbsp; I encourage you to issue the following command, which will return a very detailed report on the cmdlet:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;Get-Help Invoke-PolicyEvaluation -Detailed&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;A very simple example will assume that you have the SQL Server 2008 sample policies installed in the default location.&amp;nbsp; On my laptop, they are located at "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033".&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;#Set the working location to the file with our sample policies&lt;/P&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml" -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Executing these commands will return the output on the console with the results of the policy evaluation.&amp;nbsp; Note that these results are NOT stored&amp;nbsp;in the MSDB&amp;nbsp;database (as other&amp;nbsp;evaluation modes will do).&amp;nbsp; &amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you would like to evaluate multiple policies, they are passed as a comma separated list as follows:&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;#Set the working location to the file with our sample policies&lt;/P&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml", "Database Auto Shrink" -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The Invoke-PolicyEvaluation cmdlet can accept inputs from a pipe.&amp;nbsp; The following example will loop through and evaluate each policy stored in the file against the server.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;gci | Invoke-PolicyEvaluation -TargetServer "MyServerName"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;By default, the -AdHocPolicyExecutionMode parameter is "Check", which will simply evaluate the policy and report back through the console or through an XML output file.&amp;nbsp; The "Configure" option will reconfigure properties that failed compliance so they comply with the policy, as long as they are deterministic and settable.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml", "Database Auto Shrink" -TargetServer "MyServerName" -AdHocPolicyExecutionMode "Configure"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The final parameter I want to point out is the -OutputXml, which will produce an XML report.&amp;nbsp; As mentioned above, the policy evaluation results are not stored in the MSDB database.&amp;nbsp; Using this parameter, you can produce an output file which will be very useful when you want to review the information at a later time.&amp;nbsp; &lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;sl "C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033"&lt;/P&gt;
&lt;P&gt;Invoke-PolicyEvaluation -Policy "Database Auto Close.xml" -TargetServer "MyServerName" -OutputXml &amp;gt;"Report.xml"&lt;/P&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;So, yes you can evaluate a policy on demand through PowerShell.&amp;nbsp; You can create a SQL Server Agent Job with a step that executes your PowerShell script (new in 2008).&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I can hear what many of you are thinking - "&amp;lt;insert your name here&amp;gt;, why would I need to use this feature if I can simply create a policy on SQL Server 2008 and let the policy manage the server and have the output stored in MSDB?"&amp;nbsp; In my opinion, the policy &lt;I&gt;&lt;U&gt;should be&lt;/U&gt;&lt;/I&gt; on the server when your server is SQL Server 2008.&amp;nbsp; The server &lt;I&gt;&lt;U&gt;should be &lt;/U&gt;&lt;/I&gt;managed by the policy whenever possible.&amp;nbsp; However... What if you want to evaluate a policy against a SQL Server 2000 or 2005 instance?&amp;nbsp; Aha!&amp;nbsp; Now you have a real use case for invoking policy evaluation through PowerShell.&amp;nbsp; &amp;nbsp;&lt;/P&gt;
&lt;P&gt;This is just a brief overview of some of the ways to use this cmdlet, but as with all PowerShell and SQL implementations there are multiple ways to put these into action.&amp;nbsp; In the next parts of the series,&amp;nbsp;I will explore central management servers, data collectors, and examples on how to extend this cmdlet for an enterprise solution.&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Evaluating Policies On Demand Through PowerShell&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Evaluating Policies On Demand Through PowerShell%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx" target="_blank" title = "Email Evaluating Policies On Demand Through PowerShell"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx&amp;amp;title=Evaluating+Policies+On+Demand+Through+PowerShell" target="_blank" title = "Submit Evaluating Policies On Demand Through PowerShell to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx&amp;amp;phase=2" target="_blank" title = "Submit Evaluating Policies On Demand Through PowerShell to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx&amp;amp;title=Evaluating+Policies+On+Demand+Through+PowerShell" target="_blank" title = "Submit Evaluating Policies On Demand Through PowerShell to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx&amp;amp;title=Evaluating+Policies+On+Demand+Through+PowerShell" target="_blank" title = "Submit Evaluating Policies On Demand Through PowerShell to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/19/evaluating-policies-on-demand-through-powershell.aspx&amp;amp;title=Evaluating+Policies+On+Demand+Through+PowerShell&amp;amp;;top=1" target="_blank" title = "Add Evaluating Policies On Demand Through PowerShell to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7379" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="Maintenance" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx" /><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /><category term="Policy Based Management" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx" /><category term="PowerShell" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/PowerShell/default.aspx" /></entry><entry><title>Policy Evaluation on a Single SQL Server 2008 Instance</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx</id><published>2008-06-13T17:52:00Z</published><updated>2008-06-13T17:52:00Z</updated><content type="html">SQL Server 2008 Books Online and the &lt;A class="" title="Policy Based Management blog" href="http://blogs.msdn.com/sqlpbm/default.aspx" target=_blank&gt;Policy Based Management (PBM) blog&lt;/A&gt; have documented how to create a policy.&amp;nbsp; Please review these valuable resources if you are looking for an introduction to creating policies in SQL Server 2008.&amp;nbsp; Through the remainder of this series, I will be focusing on the different methods of evaluating a policy against a target (server, database, database object).&amp;nbsp; This first part will focus on policy evaluation on a single SQL Server 2008 instance.&amp;nbsp; As we journey through the series, I will deliver methods to evaluate policies across multiple servers and against down versions of SQL Server (2000 and 2005).&amp;nbsp; 
&lt;P&gt;As a brief introduction, SQL Server 2008 includes a new Policy Based Management (PBM) framework.&amp;nbsp; This new framework allows you to specify &lt;I&gt;intent&lt;/I&gt; in a policy, store the policy on a server and have the server managed by that policy (note: a policy may also be stored in a file and I will touch on this later in the series).&amp;nbsp; Intent may be defined as a server configuration, database configuration, connectivity requirements, security requirements, business rules, naming conventions, and more.&amp;nbsp; A policy will identify the targets (servers, databases, database objects) that must be managed by this intent and how they are managed by the intent. &amp;nbsp;How the target is managed by the policy is dictated by the evaluation mode specified on the policy.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;I&gt;I think it is very important that we set expectations:&amp;nbsp; Policy Based Management provides a level of prevention and enforcement, but the current version should be more strongly considered a framework to report and in some cases prevent and enforce compliance.&amp;nbsp; This is a tool to more easily manage deployed servers, report on the state of SQL Server, and maintain consistency and compliance to your business and regulatory requirements. &lt;/I&gt;&lt;/P&gt;
&lt;P&gt;SQL Server 2008 policies can be evaluated, or invoked, in a number of ways on a single instance.&amp;nbsp; Not all evaluation modes are available to all policies.&amp;nbsp; The facet will determine the evaluation modes available for your policy.&amp;nbsp; I have pointed out the Policy Based Management blog in the past, and please spend a few minutes to review the blog on &lt;A class="" title=Facets href="http://blogs.msdn.com/sqlpbm/archive/2008/05/24/facets.aspx" target=_blank&gt;Facets&lt;/A&gt;.&amp;nbsp; This blog is particularly enlightening as it points directly to the relationship between each facet and the supported evaluation modes.&amp;nbsp; The team has developed a chart (hint: print this out and keep it nearby) which will be very useful when you are designing policies.&lt;/P&gt;
&lt;P&gt;The following are available evaluation mode options when you save the policy on a SQL Server 2008 instance:&lt;/P&gt;
&lt;P&gt;&lt;B&gt;On Schedule&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;On Schedule&lt;/I&gt; will create a SQL Server agent job to execute the policy at scheduled intervals.&amp;nbsp; This option is available for all policies created for the database engine.&amp;nbsp; The results of the policy evaluation are available by viewing the SQL Server event log, Windows NT Application Log, or through the &lt;A class="" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" target=_blank&gt;policy views in MSDB outlined here&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Consider the following scenario:&amp;nbsp; Many organizations are challenged with maintaining a consistent deployment of SQL Server.&amp;nbsp; The process to build a new SQL Server may specify the appropriate settings, but over time these settings may be inadvertently updated.&amp;nbsp; A DBA may change an AWE setting, alter configuration settings, or alter a backup schedule - any of which can increase the time managing the server and identifying the cause of an issue.&amp;nbsp; As a result the organization either spends energy managing these configuration settings (manually reviewing periodically or building a heavily architected process to manage this process) or the enterprise has many different deployed builds in production (which leads to issues when standardizing the management of the database tier).&lt;/P&gt;
&lt;P&gt;A policy can be deployed on these servers with an evaluation mode On Schedule.&amp;nbsp; The schedule may run once per day (for example) to determine the status of the deployed instance.&amp;nbsp; This mode will provide an ideal method for &lt;I&gt;automating&lt;/I&gt; the evaluation of deployment standards and &lt;I&gt;reporting&lt;/I&gt; on instances which violate these standards.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;B&gt;Check on Change: Log &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;Check on Change: Log&lt;/I&gt; will write output to the event log and to MSDB when an action is executed against one of the properties that are controlled by the policy.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;For example, you may have a policy that requires xp_cmdshell is disabled.&amp;nbsp; If a DBA were to enable xp_cmdshell an event is logged indicating that the policy has been violated.&amp;nbsp; These logs may be viewed in the SQL Server event log, Windows NT Application Log, or through the policy views in MSDB.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Rounding out this picture, consider an alerting mechanism for violated policies that are critical.&amp;nbsp; In some cases, you may want to be immediately notified of a violation to your policy.&amp;nbsp; You may set up an alert triggered by these event logs through SQL Server or System Center which will send an email to a manager or lead administrator that an action was executed against your server that violates the policy.&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Check on Change: Prevent &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;Check on Change: Prevent&lt;/I&gt; will disallow any changes that violate the policy.&amp;nbsp; When a policy is created with this option, a DDL trigger is generated on the server.&amp;nbsp; If you have multiple policies which are set to Check on Change:Prevent, they will all use the same DDL trigger.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;As an example, you may have a business rule that requires all stored procedures in a particular application database follow a consistent naming convention.&amp;nbsp; A policy is set up with this requirement and enforced on the server with the Check on Change: Prevent evaluation mode.&amp;nbsp; When a developer issues a CREATE PROCEDURE statement, the server DDL trigger is started.&amp;nbsp; SQL Server will evaluate the procedure against the conditions specified in the policy.&amp;nbsp; If the procedure violates the condition, the CREATE PROCEDURE statement is rolled back and an error is returned to the developer.&amp;nbsp; The policy will also write an event to the SQL Server event log, Windows NT Application log and the policy views in MSDB.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;&lt;B&gt;On Demand &lt;/B&gt;&lt;/P&gt;
&lt;P&gt;&lt;I&gt;On Demand&lt;/I&gt; is an option where you manually run the policy.&amp;nbsp; Policies which are stored on SQL Server 2008 and evaluated On Demand are disabled and cannot be enabled. &amp;nbsp;This option is available for all policies stored on a SQL Server 2008 instance or stored as an XML file.&amp;nbsp; The results of policies executed On Demand are not written to the SQL Server Event Log, but are available in the &lt;A class="" title="Policy Views blog" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" target=_blank&gt;policy views in MSDB&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Evaluating a policy On Demand on a single instance can include multiple flavors.&amp;nbsp; The most obvious is manually running the policy in SQL Server Management Studio, as in the following examples.&amp;nbsp; &lt;/P&gt;
&lt;UL&gt;
&lt;LI&gt;Right-click on any policy stored in SQL Server 2008 and select Evaluate to manually evaluate the policy. &lt;/LI&gt;
&lt;LI&gt;Right click the Policies folder in SQL Server Management Studio (SQL Server Instance&amp;gt;Management&amp;gt;Policy Based Management&amp;gt;Policies) and select Evaluate. The Evaluate Policies dialog will appear. By default, the policies stored on the SQL Server 2008 instance are available and you can check which policies you would like to evaluate. If the policies are stored as XML files, select the Browse(...) button. Navigate to the folder where the policy xml files are stored and select one or more policies (hold the shift key to select more than one policy). &lt;/LI&gt;&lt;/UL&gt;
&lt;P&gt;In my next post in this series I will detail one of the lesser known (but very cool and useful) methods of evaluating a policy on demand.&amp;nbsp; &lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Policy Evaluation on a Single SQL Server 2008 Instance&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Policy Evaluation on a Single SQL Server 2008 Instance%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx" target="_blank" title = "Email Policy Evaluation on a Single SQL Server 2008 Instance"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx&amp;amp;title=Policy+Evaluation+on+a+Single+SQL+Server+2008+Instance" target="_blank" title = "Submit Policy Evaluation on a Single SQL Server 2008 Instance to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx&amp;amp;phase=2" target="_blank" title = "Submit Policy Evaluation on a Single SQL Server 2008 Instance to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx&amp;amp;title=Policy+Evaluation+on+a+Single+SQL+Server+2008+Instance" target="_blank" title = "Submit Policy Evaluation on a Single SQL Server 2008 Instance to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx&amp;amp;title=Policy+Evaluation+on+a+Single+SQL+Server+2008+Instance" target="_blank" title = "Submit Policy Evaluation on a Single SQL Server 2008 Instance to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/13/policy-evaluation-on-a-single-sql-server-2008-instance.aspx&amp;amp;title=Policy+Evaluation+on+a+Single+SQL+Server+2008+Instance&amp;amp;;top=1" target="_blank" title = "Add Policy Evaluation on a Single SQL Server 2008 Instance to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7279" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /><category term="Policy Based Management" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx" /></entry><entry><title>SQL Server 2008 Policy Based Management Resources</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx</id><published>2008-06-12T20:17:00Z</published><updated>2008-06-12T20:17:00Z</updated><content type="html">&lt;P&gt;I will be releasing a series of blogs related to Policy Based Management and PowerShell in SQL Server 2008.&amp;nbsp; As a precursor to these blogs, I wanted to be sure that everyone is aware of the many great resources available online. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;Policy-Based Management Blog&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;The SQL Server Manageability Team has started a new blog related to Policy-Based Management.&amp;nbsp; This site will provide some great learning content for the terminology and development of policies.&amp;nbsp; &lt;A href="http://blogs.msdn.com/sqlpbm/" target=_blank&gt;http://blogs.msdn.com/sqlpbm/&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;SQL Server 2008 Feature Pack&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;The following site will provide a number of additional features that you can download and use with SQL Server 2008.&amp;nbsp; Of particular interest is the download for the &lt;B&gt;Microsoft SQL Server 2008 Policies&lt;/B&gt;, which are policies that were developed for all of the best practices represented in previous versions of&amp;nbsp;the Microsoft SQL Server Best&amp;nbsp;Practice Analyzer.&amp;nbsp; I find these policies to be great tools to learn about the different ways to develop, deploy and evaluate policies.&amp;nbsp; &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyId=089A9DAD-E2DF-43E9-9CD8-C06320520B40&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?FamilyId=089A9DAD-E2DF-43E9-9CD8-C06320520B40&amp;amp;displaylang=en&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;B&gt;SQL Server 2008 RC0 Books Online&lt;/B&gt;&lt;/P&gt;
&lt;P&gt;SQL Server 2008 RC0 SQL Server Books Online can be downloaded and installed on your desktop (without negatively impacting other versions of Books Online).&amp;nbsp; The documentation contains many great learning resources for Policy Based Management and PowerShell (and loads of other stuff).&amp;nbsp; &lt;A href="http://www.microsoft.com/downloads/details.aspx?familyid=19DB0B42-A5B2-456F-9C5C-F295CDD58D7A&amp;amp;displaylang=en"&gt;http://www.microsoft.com/downloads/details.aspx?familyid=19DB0B42-A5B2-456F-9C5C-F295CDD58D7A&amp;amp;displaylang=en&lt;/A&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you are reticent to installing Books Online on your desktop, you can access the entire contents of BOL online: &lt;A href="http://msdn.microsoft.com/en-us/library/bb543165(SQL.100).aspx"&gt;http://msdn.microsoft.com/en-us/library/bb543165(SQL.100).aspx&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Watch for some very interesting material coming soon...&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=SQL Server 2008 Policy Based Management Resources&amp;amp;body=Seen on SQLblog.com: %0A%0A%09SQL Server 2008 Policy Based Management Resources%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx" target="_blank" title = "Email SQL Server 2008 Policy Based Management Resources"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx&amp;amp;title=SQL+Server+2008+Policy+Based+Management+Resources" target="_blank" title = "Submit SQL Server 2008 Policy Based Management Resources to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx&amp;amp;phase=2" target="_blank" title = "Submit SQL Server 2008 Policy Based Management Resources to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx&amp;amp;title=SQL+Server+2008+Policy+Based+Management+Resources" target="_blank" title = "Submit SQL Server 2008 Policy Based Management Resources to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx&amp;amp;title=SQL+Server+2008+Policy+Based+Management+Resources" target="_blank" title = "Submit SQL Server 2008 Policy Based Management Resources to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/12/sql-server-2008-policy-based-management-resources.aspx&amp;amp;title=SQL+Server+2008+Policy+Based+Management+Resources&amp;amp;;top=1" target="_blank" title = "Add SQL Server 2008 Policy Based Management Resources to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7271" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /><category term="Policy Based Management" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx" /></entry><entry><title>Where did Activity Monitor go?</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx</id><published>2008-06-09T20:39:00Z</published><updated>2008-06-09T20:39:00Z</updated><content type="html">&lt;P&gt;When you begin working with RC0, you may find yourself searching for Activity Monitor.&amp;nbsp; I personally spent about 10 minutes looking for Activity Monitor when I started working with RC0.&amp;nbsp; Luckily, I happen to work at Microsoft and can directly email people when I&amp;nbsp;have these types of questions (well, lucky for me but perhaps not lucky for them:-))&lt;/P&gt;
&lt;P&gt;In the past, you could only find Activity Monitor by opening the Management folder in SQL Server Management Studio.&amp;nbsp; This is no longer the place to find Activity Monitor.&amp;nbsp; Here are the two new ways to launch Activity Monitor:&lt;/P&gt;
&lt;P&gt;1. Open Management Studio.&amp;nbsp; Select the icon on the toolbar that is the furthest right (It looks like a chart with green and blue lines). &lt;/P&gt;
&lt;P&gt;2. In Object Explorer, right click on the server and select Activity Monitor.&amp;nbsp; Please note that the Activity Monitor is not available in the context menu unless you&amp;nbsp;select the server.&amp;nbsp; You cannot launch the&amp;nbsp;Activity Monitor&amp;nbsp;when you select a database, another folder, etc.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;I am certain many of you are questioning why there was a&amp;nbsp;change in location for the Activity Monitor.&amp;nbsp;I was told that the intention was to make it "more discoverable".&amp;nbsp; This provided me a great deal of humor as I spent 10 minutes looking for it and ended up asking the product team.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;Happy monitoring!&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Where did Activity Monitor go?&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Where did Activity Monitor go?%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx" target="_blank" title = "Email Where did Activity Monitor go?"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx&amp;amp;title=Where+did+Activity+Monitor+go%3f" target="_blank" title = "Submit Where did Activity Monitor go? to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx&amp;amp;phase=2" target="_blank" title = "Submit Where did Activity Monitor go? to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx&amp;amp;title=Where+did+Activity+Monitor+go%3f" target="_blank" title = "Submit Where did Activity Monitor go? to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx&amp;amp;title=Where+did+Activity+Monitor+go%3f" target="_blank" title = "Submit Where did Activity Monitor go? to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/09/where-did-activity-monitor-go.aspx&amp;amp;title=Where+did+Activity+Monitor+go%3f&amp;amp;;top=1" target="_blank" title = "Add Where did Activity Monitor go? to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7209" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /></entry><entry><title>Saving SQL Server 2008 Policy Based Management Execution History</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx</id><published>2008-06-09T03:54:00Z</published><updated>2008-06-09T03:54:00Z</updated><content type="html">&lt;P&gt;The SQL Server 2008 Policy Based Management framework includes views in MSDB to track evaluation history.&amp;nbsp; The syspolicy_policy_execution_history view displays information about when the policy was executed and the results of the execution.&amp;nbsp; The syspolicy_policy_execution_history_details view will display more details including the results of each condition.&amp;nbsp; None of this is very new - and all of this is available in Books Online.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;What is interesting -&amp;nbsp;and new in SQL Server 2008 RC0 - is a property which will allow you to configure whether you want to collect all history or only history of failed policies in syspolicy_policy_execution_history_details.&amp;nbsp; By default, SQL Server 2008 will only collect and display history in this view when the policy fails.&amp;nbsp; &lt;/P&gt;
&lt;P&gt;To access this option, open Management Studio and select Policy Management in object explorer.&amp;nbsp; Right click on Policy Management to select properties.&amp;nbsp; When LogOnSuccess is set to false (default) successful evaluations are not logged.&amp;nbsp; Setting LogOnSuccess to true will log all policy evaluation results.&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Saving SQL Server 2008 Policy Based Management Execution History&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Saving SQL Server 2008 Policy Based Management Execution History%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx" target="_blank" title = "Email Saving SQL Server 2008 Policy Based Management Execution History"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx&amp;amp;title=Saving+SQL+Server+2008+Policy+Based+Management+Execution+History" target="_blank" title = "Submit Saving SQL Server 2008 Policy Based Management Execution History to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx&amp;amp;phase=2" target="_blank" title = "Submit Saving SQL Server 2008 Policy Based Management Execution History to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx&amp;amp;title=Saving+SQL+Server+2008+Policy+Based+Management+Execution+History" target="_blank" title = "Submit Saving SQL Server 2008 Policy Based Management Execution History to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx&amp;amp;title=Saving+SQL+Server+2008+Policy+Based+Management+Execution+History" target="_blank" title = "Submit Saving SQL Server 2008 Policy Based Management Execution History to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/06/08/saving-sql-server-2008-policy-based-management-execution-history.aspx&amp;amp;title=Saving+SQL+Server+2008+Policy+Based+Management+Execution+History&amp;amp;;top=1" target="_blank" title = "Add Saving SQL Server 2008 Policy Based Management Execution History to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=7200" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /><category term="Policy Based Management" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Policy+Based+Management/default.aspx" /></entry><entry><title>PowerShell Learning Resources Online</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx</id><published>2008-04-22T14:10:00Z</published><updated>2008-04-22T14:10:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;PowerShell is all the rage!&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;It is deeply integrated in SQL Server 2008, where you can start a PowerShell session from Management Studio, and create job steps which execute PowerShell scripts.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;SQL Server 2008 will also introduce some great new cmdlets.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This integration of PowerShell in SQL Server 2008 will introduce a number of useful scenarios for centralizing administration and management of your SQL Server environment.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I will be showing some different solutions in the upcoming months, but thought some of you may be interested in resources to learn the scripting language – and learn it in the context of SQL Server administration.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;The first resource I would recommend would be a series of articles by my colleague and friend Buck Woody.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Buck is on the team which is delivering Management Studio in SQL Server 2008 (&lt;/FONT&gt;&lt;A href="http://blogs.gotdotnet.com/buckwoody/archive/2008/04/03/microsoft-loves-dba-s.aspx"&gt;&lt;FONT face=Calibri size=3&gt;http://blogs.gotdotnet.com/buckwoody/archive/2008/04/03/microsoft-loves-dba-s.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;). &lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;One of the great things about Buck (besides his movie star name and incredible personality) is that he uses his many years as a DBA, MVP, and team manager in his articles to make features and capabilities real for the database community.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Buck has written a SQL Server Reference Guide, and the PowerShell sections begin here (&lt;/FONT&gt;&lt;A href="http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=253"&gt;&lt;FONT face=Calibri size=3&gt;http://www.informit.com/guides/content.aspx?g=sqlserver&amp;amp;seqNum=253&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;This is a great introduction to scripting with PowerShell and perfect if you are very new to scripting and PowerShell.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Mind – you will not walk away from these articles as an expert PowerShell programmer – but it will give you the tools to get started.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;SQL Server 2008 Books Online includes a number of links for learning PowerShell (&lt;/FONT&gt;&lt;A href="http://technet.microsoft.com/en-us/library/cc281954(SQL.100).aspx"&gt;&lt;FONT face=Calibri size=3&gt;http://technet.microsoft.com/en-us/library/cc281954(SQL.100).aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt; ).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I would anticipate that more Microsoft links will be coming as we near the release of SQL Server 2008.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;Allen White has also been writing different examples for using PowerShell with SQL Server (&lt;/FONT&gt;&lt;A href="http://sqlblog.com/blogs/allen_white/archive/tags/PowerShell/default.aspx"&gt;&lt;FONT face=Calibri size=3&gt;http://sqlblog.com/blogs/allen_white/archive/tags/PowerShell/default.aspx&lt;/FONT&gt;&lt;/A&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;His examples provide some context to using PowerShell in your SQL Server environment.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;I hope these few online resources help get you started.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Of course, there are a plethora of books available on the topic of PowerShell, although I have not seen one that is specifically written for SQL Server.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;On that note: Please share your resources in the comments.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Let us know of those great PowerShell books or articles for DBAs!&lt;/FONT&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=PowerShell Learning Resources Online&amp;amp;body=Seen on SQLblog.com: %0A%0A%09PowerShell Learning Resources Online%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx" target="_blank" title = "Email PowerShell Learning Resources Online"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx&amp;amp;title=PowerShell+Learning+Resources+Online" target="_blank" title = "Submit PowerShell Learning Resources Online to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx&amp;amp;phase=2" target="_blank" title = "Submit PowerShell Learning Resources Online to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx&amp;amp;title=PowerShell+Learning+Resources+Online" target="_blank" title = "Submit PowerShell Learning Resources Online to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx&amp;amp;title=PowerShell+Learning+Resources+Online" target="_blank" title = "Submit PowerShell Learning Resources Online to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/22/powershell-learning-resources-_2D00_-online.aspx&amp;amp;title=PowerShell+Learning+Resources+Online&amp;amp;;top=1" target="_blank" title = "Add PowerShell Learning Resources Online to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=6343" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /><category term="PowerShell" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/PowerShell/default.aspx" /></entry><entry><title>Great Post on SSIS Destinations + More Information </title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx</id><published>2008-04-18T14:00:00Z</published><updated>2008-04-18T14:00:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;&lt;EM&gt;Another recycled post from days&amp;nbsp;gone by... &lt;/EM&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;One of my favorite blogs on SQL Server Integration Services (SSIS) is by Jamie Thompson.&amp;nbsp; He does a tremendous job sharing tips, tricks, and lessons learned from working with SSIS.&amp;nbsp; Recently he posted a blog on three of the destination adapters and the performance implications of using each (&lt;/FONT&gt;&lt;A href="http://blogs.conchango.com/jamiethomson/archive/2006/08/14/4344.aspx"&gt;&lt;SPAN style="COLOR:blue;"&gt;&lt;FONT face=Calibri size=3&gt;http://blogs.conchango.com/jamiethomson/archive/2006/08/14/4344.aspx&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;).&amp;nbsp; The blog was pretty timely, as I had been having this &lt;I&gt;exact&lt;/I&gt; conversation with a client the previous week.&amp;nbsp; I wanted to add a couple of additional thoughts on the material.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;First, after reading the blog, one would ask oneself "Self, why would I ever use the OLE-DB Destination &lt;I&gt;without&lt;/I&gt; FastLoad?"&amp;nbsp; Well, that is a good question.&amp;nbsp; Undoubtedly, this method is extremely slow.&amp;nbsp; Reiterate, extremely slow.&amp;nbsp; OK, slow compared to the counterparts "with FastLoad" or SQL Server Destination.&amp;nbsp; If you run Profiler while loading into each type of destination, you will quickly see that the OLE-DB Destination without FastLoad inserts each row individually.&amp;nbsp; Obviously, this is very slow.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;OLE-DB Destinations with FastLoad cannot be set to redirect error rows.&amp;nbsp; Consider a situation where you would want to trap error records in the destination - such as if a record violates a primary key constraint, or a domain constraint.&amp;nbsp; If you want to redirect these rows and allow the load to succeed while trapping those bad records for assessment and possible reload at a&amp;nbsp;later time, you &lt;I&gt;CANNOT&lt;/I&gt; use FastLoad.&amp;nbsp; This only leaves OLE-DB without FastLoad, since the SQL Server Destination does not support this behavior either.&amp;nbsp; &lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;So you may then ask yourself “Self, why would I choose to use the OLE-DB Destination with FastLoad over the SQL Server Destination?”&amp;nbsp; Another good question.&amp;nbsp; Well, to use the SQL Server Destination, the destination database &lt;I&gt;must be&lt;/I&gt; on the same server on which you are executing the SQL Server Integration Services package.&amp;nbsp; From my experience, you will not see a significant performance difference between the two solutions (this is subjective and you should test with your own loads!).&amp;nbsp; I generally prefer the OLE-DB Destination simply because it gives you better flexibility on where you execute the package.&amp;nbsp; You may&amp;nbsp;make a decision that the package will always execute from the server where the destiniation resides - but you are painting yourself in a corner and limiting your ability to easily scale out in the future.&lt;/FONT&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Great Post on SSIS Destinations + More Information &amp;amp;body=Seen on SQLblog.com: %0A%0A%09Great Post on SSIS Destinations + More Information %0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx" target="_blank" title = "Email Great Post on SSIS Destinations + More Information "&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx&amp;amp;title=Great+Post+on+SSIS+Destinations+%2b+More+Information+" target="_blank" title = "Submit Great Post on SSIS Destinations + More Information  to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx&amp;amp;phase=2" target="_blank" title = "Submit Great Post on SSIS Destinations + More Information  to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx&amp;amp;title=Great+Post+on+SSIS+Destinations+%2b+More+Information+" target="_blank" title = "Submit Great Post on SSIS Destinations + More Information  to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx&amp;amp;title=Great+Post+on+SSIS+Destinations+%2b+More+Information+" target="_blank" title = "Submit Great Post on SSIS Destinations + More Information  to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/great-post-on-ssis-destinations-more-information.aspx&amp;amp;title=Great+Post+on+SSIS+Destinations+%2b+More+Information+&amp;amp;;top=1" target="_blank" title = "Add Great Post on SSIS Destinations + More Information  to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=6272" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2005" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2005/default.aspx" /></entry><entry><title>Memory Pressure on 64 Bit SQL Server 2005 </title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx</id><published>2008-04-18T12:00:00Z</published><updated>2008-04-18T12:00:00Z</updated><content type="html">&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;&lt;FONT face=Calibri&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;&lt;EM&gt;I have just learned that my old blog will be disabled, so I will be recycling some of the more meaningful blogs to SQLBlog.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This was written last year during an engagement where I was troubleshooting an issue with procedure cache growth.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The good news appears to be that some relief is on the way (&lt;/EM&gt;&lt;A class="" title="SQL Server Procedure Cache: More Relief on the Way" href="http://sqlblog.com/blogs/adam_machanic/archive/2008/04/15/sql-server-procedure-cache-more-relief-on-the-way.aspx" target=_blank&gt;SQL Server Procedure Cache: More Relief on the Way&lt;/A&gt;)&lt;EM&gt;.&lt;/EM&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/SPAN&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;Do you remember the days when you first started learning about 64 bit capabilities and dreaming of the day when you were no longer confined by the barriers of the 32 bit virtual address space?&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Those ideas produced dreams of a truly capable scale up solution.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Yes, 64 bit has been a blessing for many of our SQL Server databases.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;But as is often the case, there are some drawbacks.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Such is the case for some 64 bit SQL Server 2005 database applications.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;In the 32 bit OS, you have a total of 4 GB of virtual address space, with 2-3 GB of virtual address space available for the applications (depending on how you configured your boot.ini file).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The 32 bit version of SQL Server is very busy managing the procedure cache, user cache, log cache, extended stored procedures, binaries and buffer (data) cache within the limited confines of the 2-3 GB virtual address space.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;When you enable AWE on 32 bit SQL Server, you are extending the buffer (data) cache, and not able to address the available memory for any of these other items – including the procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;SQL Server must still &lt;I style="mso-bidi-font-style:normal;"&gt;manage&lt;/I&gt; the procedure cache within the constraints of the 2-3 GB of available virtual address space.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;Now let’s consider 64 bit.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;These confines are history – and we can now enjoy the capabilities of a very large user cache, very large log cache, and as many are discovering a very large procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;As was the case with one customer this week, the procedure cache was using over half the available RAM for the instance.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;Note:&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This happens in specific scenarios.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I am not saying that 64 bit is bad, only that in some scenarios it is important to understand where you need to adjust your management of a database.&lt;/B&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;&lt;FONT face=Calibri&gt;Consider an application which executes a large number of non-parameterized ad hoc statements and dynamic SQL.&amp;nbsp; &lt;I style="mso-bidi-font-style:normal;"&gt;This is particularly an issue when executed with EXECUTE vs. sp_execute. See chapter 7 in “Expert SQL Server 2005 Development” for an excellent discussion on the difference (shameless plug&lt;/I&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;I style="mso-bidi-font-style:normal;"&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:Wingdings;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-char-type:symbol;mso-symbol-font-family:Wingdings;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;&lt;SPAN style="mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/I&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style:normal;"&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;).&lt;/SPAN&gt;&lt;/I&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;When a statement is executed, SQL Server searches the procedure cache to see if a plan exists for the statement.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;If one does not exist, SQL Server will save an execution plan in the procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This can quickly lead to a large procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;These statements may never be used again, but SQL Server cannot differentiate between a recently executed ad hoc statement that may be reused and one that will not ever be reused.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;If the plan is considered expensive – or one which requires a lot of work to generate – SQL Server will not age this plan out very quickly.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Since the 64 bit world has the luxury of larger volumes of RAM in which to manage the procedure cache, SQL Server may prefer to keep these large expensive plans in cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;Why is this a problem?&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;For starters, when SQL Server is under memory pressure it may instead flush pages from our valuable buffer (data) cache instead of flushing what it determines to be expensive plans in the procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;A larger procedure cache may also impact the time for SQL Server to search the procedure cache to determine if a plan exists.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;When the procedure cache is full of meaningful and reusable plans, perhaps this is time well spent.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;When your procedure cache is full of plans which will never be reused, it is a waste of resources and a waste of time.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;Currently, there are a few options to manage the problem if you are not able to fix the code.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Of course, &lt;STRONG&gt;fixing the code is the best option.&lt;/STRONG&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Reduce or eliminate dynamically built statements in application code.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Reduce or eliminate ad hoc statements, or at least parameterize them.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;When this is not an option:&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;SPAN style="mso-fareast-font-family:'Times New Roman';"&gt;On regular intervals execute DBCC FREEPROCCACHE.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Times New Roman','serif';mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';mso-bidi-theme-font:major-bidi;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;This will flush the procedure cache.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This is the best option when you have exhausted all other options.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Flushing the procedure cache may cause your database application to slow down as SQL Server compiles and stores execution plans for procedures and statements.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; In one of my past engagements, this was the only option given their environment.&amp;nbsp; They had set the database to 8.0 compatibility mode, which did not give them the luxury of the next solutions.&amp;nbsp; In the end, they fixed their code to parameterize the dynamic SQL and they no longer had problems.&amp;nbsp; (An interesting note is that this issue was caused by one small batch process that ran nightly - sometimes the little things can hurt a lot!)&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;SPAN style="mso-fareast-font-family:'Times New Roman';"&gt;Use Forced Parameterization on the databases which are causing this issue.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Times New Roman','serif';mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';mso-bidi-theme-font:major-bidi;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;Forced parameterization will replace any constants in an eligible statement with a variable when the query is compiled.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This is particularly suited when your application builds the same statement with differing constants.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Consider the following statements:&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;SELECT * FROM Production.Product WHERE MakeFlag = 1 AND ListPrice &amp;gt; 0&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;SELECT * FROM Production.Product WHERE MakeFlag = 0 AND ListPrice &amp;gt; 1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;A single parameterized statement is stored in the procedure cache:&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;(@0 int,@1 int)select * from Production . Product where MakeFlag = @0 and ListPrice &amp;gt; @1&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;In one customer situation, the procedure cache contained tens of thousands of large duplicate statements with differing constants in the where clause.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Forced parameterization significantly reduced the number of statements stored in the procedure cache.&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;This option is best suited when there are a large number of statements that are regularly executed with varying constants in the WHERE clause.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;There are tradeoffs with this method, and I would strongly recommend reviewing the requirements and risks in BOL.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;Note: This is not available if your database is in backward compatibility (8.0 or lower). &lt;/B&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT size=4&gt;&lt;FONT color=#4f81bd&gt;&lt;FONT face=Cambria&gt;&lt;SPAN style="mso-fareast-font-family:'Times New Roman';"&gt;Use a Plan Guide to Force Parameterization at the Statement Level&lt;/SPAN&gt;&lt;SPAN style="FONT-FAMILY:'Times New Roman','serif';mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';mso-bidi-theme-font:major-bidi;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;LINE-HEIGHT:normal;"&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="FONT-SIZE:12pt;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-bidi-font-family:'Times New Roman';mso-fareast-font-family:'Times New Roman';"&gt;This is the ideal option when you know that there are only a few statements which are causing the procedure cache to grow.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This will be the least intrusive way to force parameterization.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This option will allow you to still maintain a procedure cache and enjoy execution plan reuse.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This may not be a reasonable solution when you have hundreds of statements, as you will need to build a plan guide for each statement.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;B style="mso-bidi-font-weight:normal;"&gt;Note: This is not available if your database is in backward compatibility (8.0 or lower).&lt;/B&gt;&lt;/SPAN&gt;&lt;SPAN style="FONT-SIZE:12pt;FONT-FAMILY:'Times New Roman','serif';mso-fareast-font-family:'Times New Roman';"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Memory Pressure on 64 Bit SQL Server 2005 &amp;amp;body=Seen on SQLblog.com: %0A%0A%09Memory Pressure on 64 Bit SQL Server 2005 %0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx" target="_blank" title = "Email Memory Pressure on 64 Bit SQL Server 2005 "&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx&amp;amp;title=Memory+Pressure+on+64+Bit+SQL+Server+2005+" target="_blank" title = "Submit Memory Pressure on 64 Bit SQL Server 2005  to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx&amp;amp;phase=2" target="_blank" title = "Submit Memory Pressure on 64 Bit SQL Server 2005  to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx&amp;amp;title=Memory+Pressure+on+64+Bit+SQL+Server+2005+" target="_blank" title = "Submit Memory Pressure on 64 Bit SQL Server 2005  to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx&amp;amp;title=Memory+Pressure+on+64+Bit+SQL+Server+2005+" target="_blank" title = "Submit Memory Pressure on 64 Bit SQL Server 2005  to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/18/memory-pressure-on-64-bit-sql-server-2005.aspx&amp;amp;title=Memory+Pressure+on+64+Bit+SQL+Server+2005+&amp;amp;;top=1" target="_blank" title = "Add Memory Pressure on 64 Bit SQL Server 2005  to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=6271" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2005" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2005/default.aspx" /><category term="Maintenance" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/Maintenance/default.aspx" /></entry><entry><title>What's in a name?</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx</id><published>2008-04-17T18:43:00Z</published><updated>2008-04-17T18:43:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;A good friend recently asked me to explain the difference between Performance Data Collector,&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Performance Studio, and Performance Datawarehouse.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Well, this is an interesting question, and I am certain many people have been trying to figure out how all of these concepts relate to one another.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;We at Microsoft have been adjusting the names of many of the new features, in an effort to properly show how the different features may be leveraged.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;But, as these names are adjusted it leads to confusion about where to find each feature and how to search for different topics online or in Books Online.&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT face=Cambria color=#4f81bd size=4&gt;Performance Studio &lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Let’s start with Performance Studio.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This is simply the wrapper of four solutions:&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Data Collector, performance and diagnostic monitoring, Management Data Warehouse for historical reporting, and troubleshooting through Policy based management.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This is the vision of a complete Microsoft solution for performance data collection, storage for historical analysis and trending, and diagnostic reporting and dashboards.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;SPAN style="FONT-SIZE:13.5pt;COLOR:black;LINE-HEIGHT:115%;FONT-FAMILY:'Verdana','sans-serif';mso-no-proof:yes;"&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The term/concept “Performance Studio” has been in a number of different older Microsoft presentations, although I see fewer people referring to “Performance Studio” in more recent material.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;Some people have been using the terms Performance Studio and Data Collector interchangeably – but Data Collector is merely a component of the full Performance Studio vision.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;You will not find anything in Books Online for “Performance Studio”, but you will find a plethora of information related to each individual component.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT face=Cambria color=#4f81bd size=4&gt;Performance Data Collector &lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;Performance Data Collector is synonymous with Data Collector.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;We have dropped Performance from the name in later documentation, including Books Online – and for very good reason.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;On the surface, the Data Collector appears to be a tool to collect performance related data but I truly believe it is a process that can be leveraged to collect all types of data - both system-related and business-related.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The data collectors can be configured on each server to collect data and store on a central data warehouse.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;When you configure data collection with Management Studio, you will see three system data collector sets which are installed by default.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;These are collecting data related to disk usage, query statistics (poor performing queries) and system utilization (CPU, memory, IO, network, etc).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;These “Data Collection Sets” are detailed very well in Books Online, and in the future I will work on a blog related to each of these collection sets.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Each of these data collection sets may be enabled or disabled independently from one another.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;I style="mso-bidi-font-style:normal;"&gt;And…&lt;/I&gt; You can create your own custom data collection sets which are defined to use a SQL Server Trace, performance counters or a T-SQL query.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;For example, you can set up a custom data collector which will execute a TSQL statement against a table and load the data into the performance data warehouse.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;Since I am always thinking about compliance (I am a lot of fun at parties&lt;/FONT&gt;&lt;SPAN style="FONT-FAMILY:Wingdings;mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;mso-ascii-theme-font:minor-latin;mso-hansi-theme-font:minor-latin;mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;&lt;SPAN style="mso-char-type:symbol;mso-symbol-font-family:Wingdings;"&gt;J&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;FONT face=Calibri&gt;), I think about setting up a custom data collector on my servers to centralize the results of policy evaluation across my enterprise – a single source to report on compliance for my entire enterprise!&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;There is no gui interface for defining custom data collectors in this current version - you must create these through scripts.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;H2 style="MARGIN:10pt 0in 0pt;"&gt;&lt;FONT face=Cambria color=#4f81bd size=4&gt;The Performance Data Warehouse&lt;/FONT&gt;&lt;/H2&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp;&lt;/SPAN&gt;That is where we will end our journey.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The Performance Data Warehouse has also been renamed to Management Data Warehouse – again to properly depict the vision of a solution for centralizing all types of data – not just performance related.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;At a very high level, the Management Data Warehouse is the destination for the data from the data collector.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;When you configure data collection, you define the server instance and database where you would like to store the data for the data collector.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This database may exist on the same instance, or (more likely) on a separate instance on a different server in your enterprise.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This single database may serve as the destination for one or more instances which are configured for data collection. &lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;&lt;FONT face=Calibri&gt;The Management Data Warehouse is initially created with tables in one of two schemas: core and snapshot.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The core tables are dimension tables and the snapshot tables are the fact tables.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;When you create a custom data collector, a third schema custom_snapshots is created to support the custom data collector sets.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=What's in a name?&amp;amp;body=Seen on SQLblog.com: %0A%0A%09What's in a name?%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx" target="_blank" title = "Email What's in a name?"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx&amp;amp;title=What%27s+in+a+name%3f" target="_blank" title = "Submit What's in a name? to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx&amp;amp;phase=2" target="_blank" title = "Submit What's in a name? to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx&amp;amp;title=What%27s+in+a+name%3f" target="_blank" title = "Submit What's in a name? to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx&amp;amp;title=What%27s+in+a+name%3f" target="_blank" title = "Submit What's in a name? to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2008/04/17/what-is-a-name.aspx&amp;amp;title=What%27s+in+a+name%3f&amp;amp;;top=1" target="_blank" title = "Add What's in a name? to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=6268" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author><category term="SQL Server 2008" scheme="http://sqlblog.com/blogs/lara_rubbelke/archive/tags/SQL+Server+2008/default.aspx" /></entry><entry><title>We are Leaders!</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx</id><published>2007-10-16T20:13:00Z</published><updated>2007-10-16T20:13:00Z</updated><content type="html">&lt;P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:'Arial','sans-serif';"&gt;Some very exciting news was released last week:&amp;nbsp; Microsoft SQL Server is in the Leaders quadrant for the Gartner Magic Quadrant for Data Warehousing!&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:'Arial','sans-serif';"&gt;&lt;A href="http://www.microsoft.com/presspass/press/2007/oct07/10-12DWMQPR.mspx"&gt;http://www.microsoft.com/presspass/press/2007/oct07/10-12DWMQPR.mspx&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:'Arial','sans-serif';"&gt;This news gives reinforces what those of us who work with SQL Server already know:&amp;nbsp; SQL Server Scales!&amp;nbsp; With the Data Warehousing enhancements and new capabilities coming with SQL Server 2008, I am sure we are looking forward to a long future as Leaders.&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN style="FONT-SIZE:10pt;FONT-FAMILY:'Arial','sans-serif';"&gt;Read the full report here: &lt;A href="http://mediaproducts.gartner.com/reprints/microsoft/article19/article19.html"&gt;http://mediaproducts.gartner.com/reprints/microsoft/article19/article19.html&lt;/A&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=We are Leaders!&amp;amp;body=Seen on SQLblog.com: %0A%0A%09We are Leaders!%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx" target="_blank" title = "Email We are Leaders!"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx&amp;amp;title=We+are+Leaders!" target="_blank" title = "Submit We are Leaders! to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx&amp;amp;phase=2" target="_blank" title = "Submit We are Leaders! to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx&amp;amp;title=We+are+Leaders!" target="_blank" title = "Submit We are Leaders! to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx&amp;amp;title=We+are+Leaders!" target="_blank" title = "Submit We are Leaders! to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/10/16/we-are-leaders.aspx&amp;amp;title=We+are+Leaders!&amp;amp;;top=1" target="_blank" title = "Add We are Leaders! to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=3018" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry><entry><title>PASS Summit Demo Scripts</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="2295516" href="http://sqlblog.com/blogs/lara_rubbelke/attachment/2611.ashx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx</id><published>2007-09-19T22:12:00Z</published><updated>2007-09-19T22:12:00Z</updated><content type="html">&lt;P&gt;Thanks to all who attended my session on SQL Server Encryption this afternoon.&amp;nbsp; As promised, my demo scripts are available on this site.&amp;nbsp; I have added an additional script for those looking to estimate the size of a table with a single column encrypted.&lt;/P&gt;
&lt;P&gt;I am now off to more events - I need to pick up all of the free swag I can tonight!&amp;nbsp; :-)&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=PASS Summit Demo Scripts&amp;amp;body=Seen on SQLblog.com: %0A%0A%09PASS Summit Demo Scripts%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx" target="_blank" title = "Email PASS Summit Demo Scripts"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx&amp;amp;title=PASS+Summit+Demo+Scripts" target="_blank" title = "Submit PASS Summit Demo Scripts to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx&amp;amp;phase=2" target="_blank" title = "Submit PASS Summit Demo Scripts to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx&amp;amp;title=PASS+Summit+Demo+Scripts" target="_blank" title = "Submit PASS Summit Demo Scripts to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx&amp;amp;title=PASS+Summit+Demo+Scripts" target="_blank" title = "Submit PASS Summit Demo Scripts to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/09/19/pass-summit-demo-scripts.aspx&amp;amp;title=PASS+Summit+Demo+Scripts&amp;amp;;top=1" target="_blank" title = "Add PASS Summit Demo Scripts to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=2611" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry><entry><title>New SQL Server Monitor Gadget for Windows Vista Sidebar</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx</id><published>2007-08-09T13:09:00Z</published><updated>2007-08-09T13:09:00Z</updated><content type="html">&lt;FONT face=Calibri&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT size=3&gt;&lt;SPAN style="mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;"&gt;Jamie Thomson, John Rayner&amp;nbsp;and their team developed a Vista sidebar gadget to monitor SQL Server.&amp;nbsp; &lt;/SPAN&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;A href="http://blogs.conchango.com/jamiethomson/archive/2007/08/09/Announcing-SQL-Server-Monitor-Gadget-for-Windows-Vista-Sidebar.aspx"&gt;&lt;SPAN style="mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;"&gt;&lt;FONT size=3&gt;http://blogs.conchango.com/jamiethomson/archive/2007/08/09/Announcing-SQL-Server-Monitor-Gadget-for-Windows-Vista-Sidebar.aspx&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;FONT size=3&gt;&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;SPAN style="mso-ascii-font-family:Calibri;mso-hansi-font-family:Calibri;"&gt;&lt;FONT size=3&gt;I saw this and my immediate reaction was "What fun!"&amp;nbsp; Great job building a useful gadget!&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 0pt;"&gt;&lt;o:p&gt;&lt;FONT face=Calibri size=3&gt;&amp;nbsp;&lt;/FONT&gt;&lt;/o:p&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=New SQL Server Monitor Gadget for Windows Vista Sidebar&amp;amp;body=Seen on SQLblog.com: %0A%0A%09New SQL Server Monitor Gadget for Windows Vista Sidebar%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx" target="_blank" title = "Email New SQL Server Monitor Gadget for Windows Vista Sidebar"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx&amp;amp;title=New+SQL+Server+Monitor+Gadget+for+Windows+Vista+Sidebar" target="_blank" title = "Submit New SQL Server Monitor Gadget for Windows Vista Sidebar to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx&amp;amp;phase=2" target="_blank" title = "Submit New SQL Server Monitor Gadget for Windows Vista Sidebar to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx&amp;amp;title=New+SQL+Server+Monitor+Gadget+for+Windows+Vista+Sidebar" target="_blank" title = "Submit New SQL Server Monitor Gadget for Windows Vista Sidebar to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx&amp;amp;title=New+SQL+Server+Monitor+Gadget+for+Windows+Vista+Sidebar" target="_blank" title = "Submit New SQL Server Monitor Gadget for Windows Vista Sidebar to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/08/09/new-sql-server-monitor-gadget-for-windows-vista-sidebar.aspx&amp;amp;title=New+SQL+Server+Monitor+Gadget+for+Windows+Vista+Sidebar&amp;amp;;top=1" target="_blank" title = "Add New SQL Server Monitor Gadget for Windows Vista Sidebar to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=2164" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry><entry><title>Smart Index Defragmentation for an ONLINE World</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx" /><link rel="enclosure" type="application/x-zip-compressed" length="4684" href="http://sqlblog.com/blogs/lara_rubbelke/attachment/1981.ashx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx</id><published>2007-07-30T14:26:00Z</published><updated>2007-07-30T14:26:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;One of the many reasons I why I love consulting is the constant evolution and challenge.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;You may have something that works “just fine” until a new customer simple states “This is great.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Can you make it do XYZ too?”&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I love those “could you just” statements, because they challenge the status quo and help you create some really meaningful solutions.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;Recently I have been engaged with a customer who was migrating from SQL Server 7.0 to SQL Server 2005 Enterprise Edition for a high profile web application requiring high availability.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;They have large tables, and will be embracing partitioning in the near future.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;At this time, they cannot sustain the downtime necessary to address index fragmentation, and wanted to defragment their indexes ONLINE (Enterprise Edition feature which significantly reduces downtime when rebuilding indexes).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;In the past, I had developed a centralized &lt;A class="" href="http://blogs.digineer.com/blogs/larar/archive/2006/08/16/smart-index-defrag-reindex-for-a-consolidated-sql-server-2005-environment.aspx" target=_blank&gt;“smart reindex” procedure&lt;/A&gt; but this did not account for ONLINE index processing.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Available for download on this blog is an update to this procedure which will accommodate addressing index fragmentation online and/or offline.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This is a single procedure which should be stored centrally.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;It can be executed against any user database in an instance.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I will also include the SQL Server 2005 Standard Edition procedure which will not offer an option to execute using ONLINE.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;I will not go into a full discussion of how SQL Server rebuilds an index ONLINE, as this is discussed in Books Online.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I will discuss some of the nuances and caveats of building indexes ONLINE that directly relate to the attached procedure.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;First, an index cannot be built ONLINE if it contains LOB data (image, text, ntext, varchar(max), nvarchar(max), varbinary(max), and xml).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;For a clustered index, you cannot rebuild the clustered index ONLINE if any columns exist in the table with these data types.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;For a non-clustered index, you cannot rebuild the index ONLINE if the index contains any columns with these data types.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;Second, a single partition of an index with multiple partitions cannot be rebuilt ONLINE.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;You can REORGANIZE a single index partition (which is by nature ONLINE), but you cannot REBUILD a single index partition ONLINE.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;You can rebuild an entire index (all partitions) ONLINE.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;These important rules are handled in the attached procedure with the following logic:&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;The user specifies @online= ‘ON’ and @fullprocess = ‘ON’&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index with multiple partitions will be processed with REORGANIZE&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index with a single partition will be processed with REBUILD WITH(ONLINE=ON) if the index does not contain columns which of a data type not supported by ONLINE index processing.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index with a single partition which contains a column with a data type not supported by ONLINE index processing will be processed with REORGANIZE or REBUILD (OFFLINE) depending on the level of fragmentation.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;The user specifies @online= ‘ON’ and @fullprocess = ‘OFF’&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index with multiple partitions will be processed with REORGANIZE.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index with a single partition will be processed with REBUILD WITH(ONLINE=ON) if the index does not contain columns which of a data type not supported by ONLINE index processing.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;An index partition from an index which contains a column with a data type not supported by ONLINE index processing will not be processed.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;The user specifies @online= ‘OFF’ and @fullprocess = ‘ON’&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;All indexes are processed with REORGANIZE or REBUILD (OFFLINE) depending on the level of fragmentation.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;The user specifies @online= ‘OFF’ and @fullprocess = ‘OFF’&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt 0.5in;"&gt;&lt;FONT face=Calibri size=3&gt;No indexes are processed.&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;This procedure will not support the capability to process an index with multiple partitions ONLINE.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Remember, if an index has multiple partitions you can REORGANIZE each partition or you can REBUILD ONLINE the entire index (all partitions).&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;This process assumes that REORGANIZE is acceptable for index partitions meeting these criteria.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Since this is inherently ONLINE, it may be acceptable.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;The logic can be altered to ignore these indexes, if this is not acceptable.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;Since REORGANIZE may not be as complete as REBUILD, or may require more time to eliminate fragmentation, the user should know that they can specify @online= ‘OFF’ and @fullprocess = ‘ON’ during an acceptable maintenance window to address the fragmentation.&lt;/FONT&gt;&lt;/P&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Smart Index Defragmentation for an ONLINE World&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Smart Index Defragmentation for an ONLINE World%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx" target="_blank" title = "Email Smart Index Defragmentation for an ONLINE World"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx&amp;amp;title=Smart+Index+Defragmentation+for+an+ONLINE+World" target="_blank" title = "Submit Smart Index Defragmentation for an ONLINE World to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx&amp;amp;phase=2" target="_blank" title = "Submit Smart Index Defragmentation for an ONLINE World to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx&amp;amp;title=Smart+Index+Defragmentation+for+an+ONLINE+World" target="_blank" title = "Submit Smart Index Defragmentation for an ONLINE World to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx&amp;amp;title=Smart+Index+Defragmentation+for+an+ONLINE+World" target="_blank" title = "Submit Smart Index Defragmentation for an ONLINE World to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/smart-index-defragmentation-for-an-online-world.aspx&amp;amp;title=Smart+Index+Defragmentation+for+an+ONLINE+World&amp;amp;;top=1" target="_blank" title = "Add Smart Index Defragmentation for an ONLINE World to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=1981" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry><entry><title>Hello SQLBlog!</title><link rel="alternate" type="text/html" href="http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx" /><id>http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx</id><published>2007-07-30T14:21:00Z</published><updated>2007-07-30T14:21:00Z</updated><content type="html">&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT face=Calibri size=3&gt;Hello SQLBlog!&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; I am thrilled to be contributing to this excellent forum!&amp;nbsp; &lt;/SPAN&gt;I am a SQL Server MVP and work as a consultant for Digineer in Minneapolis, MN.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I work across the SQL Server platform on data management and business intelligence.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I contributed the chapter on encryption in Adam Machanic’s book “&lt;A class="" href="http://www.amazon.com/Expert-SQL-Server-2005-Development/dp/159059729X/ref=sr_1_2/105-6660504-1772407?ie=UTF8&amp;amp;s=books&amp;amp;qid=1185415381&amp;amp;sr=1-2" target=_blank&gt;Expert SQL Server 2005 Development&lt;/A&gt;”, and I wrote a &lt;A class="" href="http://www.microsoft.com/sql/techinfo/whitepapers/empowerenterprise.mspx" target=_blank&gt;whitepaper&lt;/A&gt; for Microsoft on the value of Enterprise Edition feature in our environments.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I regularly speak in the community - notably at our local PASS chapter (&lt;/FONT&gt;&lt;A href="http://www.mnssug.org/"&gt;&lt;FONT face=Calibri color=#0000ff size=3&gt;www.mnssug.org&lt;/FONT&gt;&lt;/A&gt;&lt;FONT face=Calibri size=3&gt;), the national PASS conference (2006 and 2007), and TechEd (2006 and 2007).&lt;/FONT&gt;&lt;/P&gt;&lt;FONT face=Calibri&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;FONT size=3&gt;I have some &lt;A class="" href="http://blogs.digineer.com/blogs/larar/default.aspx" target=_blank&gt;historical blogs&lt;/A&gt; available with my employer, where I share interesting things related to SQL Server.&lt;SPAN style="mso-spacerun:yes;"&gt;&amp;nbsp; &lt;/SPAN&gt;I tend to find my interest in &lt;SPAN style="mso-bidi-font-family:Arial;"&gt;SQL Server features, issue resolution, interesting SQL Server internals information, and upcoming SQL Server related events.&amp;nbsp;&lt;o:p&gt;&lt;/o:p&gt;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P class=MsoNormal style="MARGIN:0in 0in 10pt;"&gt;&lt;SPAN style="mso-bidi-font-family:Arial;"&gt;&lt;FONT size=3&gt;Now on to writing the fun stuff!&lt;o:p&gt;&lt;/o:p&gt;&lt;/FONT&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/FONT&gt;
&lt;BR&gt;&lt;div class = "shareblock"&gt;&lt;span class = "shareblockTitle"&gt;Share this post:&lt;/span&gt;&lt;span class = "shareblockLink"&gt; &lt;a href = "mailto:?subject=Hello SQLBlog!&amp;amp;body=Seen on SQLblog.com: %0A%0A%09Hello SQLBlog!%0A%0Ahttp://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx" target="_blank" title = "Email Hello SQLBlog!"&gt;email it!&lt;/a&gt; |  &lt;a href = "http://del.icio.us/post?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx&amp;amp;title=Hello+SQLBlog!" target="_blank" title = "Submit Hello SQLBlog! to del.icio.us"&gt;bookmark it!&lt;/a&gt; |  &lt;a href = "http://www.digg.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx&amp;amp;phase=2" target="_blank" title = "Submit Hello SQLBlog! to digg.com"&gt;digg it!&lt;/a&gt; |  &lt;a href = "http://reddit.com/submit?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx&amp;amp;title=Hello+SQLBlog!" target="_blank" title = "Submit Hello SQLBlog! to reddit.com"&gt;reddit!&lt;/a&gt; |  &lt;a href = "http://www.dotnetkicks.com/submit/?url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx&amp;amp;title=Hello+SQLBlog!" target="_blank" title = "Submit Hello SQLBlog! to DotNetKicks"&gt;kick it!&lt;/a&gt; |  &lt;a href = "https://favorites.live.com/quickadd.aspx?marklet=1&amp;amp;mkt=en-us&amp;amp;url=http://sqlblog.com/blogs/lara_rubbelke/archive/2007/07/30/hello-sqlblog.aspx&amp;amp;title=Hello+SQLBlog!&amp;amp;;top=1" target="_blank" title = "Add Hello SQLBlog! to Live Bookmarks"&gt;live it!&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;img src="http://info.sqlblog.com/a.aspx?ZoneID=0&amp;BannerID=12&amp;AdvertiserID=1&amp;CampaignID=12&amp;Task=Get&amp;Mode=TEXT&amp;SiteID=1&amp;RandomNumber=463323" width="1" height="1" border="0"&gt;&lt;img src="http://sqlblog.com/aggbug.aspx?PostID=1980" width="1" height="1"&gt;</content><author><name>Lara Rubbelke</name><uri>http://sqlblog.com/members/Lara+Rubbelke.aspx</uri></author></entry></feed>