<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">Dan&amp;#39;s Blog</title><subtitle type="html">I am Principal Program Manager at Microsoft leading the Business Platform Division&amp;#39;s (BPD) community team. BPD includes SQL Server, SQL Azure, BizTalk, AppFabric, and other technologies and services.</subtitle><id>http://blogs.msdn.com/b/dtjones/atom.aspx</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/b/dtjones/atom.aspx" /><generator uri="http://telligent.com" version="5.6.50428.7875">Telligent Evolution Platform Developer Build (Build: 5.6.50428.7875)</generator><updated>2010-10-09T09:19:00Z</updated><entry><title>Oracle Unbreakable == Oxymoron</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2012/01/18/oracle-unbreakable-oxymoron.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2012/01/18/oracle-unbreakable-oxymoron.aspx</id><published>2012-01-18T18:59:35Z</published><updated>2012-01-18T18:59:35Z</updated><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;And I ask once again… why do people run Oracle?&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.businessinsider.com/yikes-oracle-issues-emergency-fix-for-a-big-fat-security-problem-2012-1?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+businessinsider+%28Business+Insider%29" href="http://www.businessinsider.com/yikes-oracle-issues-emergency-fix-for-a-big-fat-security-problem-2012-1?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+businessinsider+%28Business+Insider%29"&gt;http://www.businessinsider.com/yikes-oracle-issues-emergency-fix-for-a-big-fat-security-problem-2012-1?utm_source=feedburner&amp;amp;utm_medium=feed&amp;amp;utm_campaign=Feed%3A+businessinsider+%28Business+Insider%29&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10258178" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="Security" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Security/" /><category term="Oracle" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Oracle/" /></entry><entry><title>Designing for Security</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2012/01/16/designing-for-security.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2012/01/16/designing-for-security.aspx</id><published>2012-01-16T17:38:54Z</published><updated>2012-01-16T17:38:54Z</updated><content type="html">&lt;p&gt;I just finished reading this &lt;a href="http://www.darkreading.com/database-security/167901020/security/client-security/232400214/does-nosql-mean-no-security.html"&gt;article&lt;/a&gt; on NoSQL security. It raised a couple of concerns:&lt;/p&gt;  &lt;p&gt;1. Systems require security. Hard stop. no if’s and’s or but’s about it. Designing security from the start is a hard task. At Microsoft there are several practices and resources we use to design and evaluate security. These have been in place for ~10 years and have been refined. My assessment is it’s working. Look at the security track record for SQL2K5 through SQL2K8R2. Pretty darn solid, especially when compared to Oracle. We spent a significant amount of time reviewing existing product functionality and in designing and testing new functionality. It’s simple ignorance to release new infrastructure software, much less anything else, without designing for security.&lt;/p&gt;  &lt;p&gt;2. It’s additional ignorance like the following that cause me serious concern; from the same article:&lt;/p&gt;  &lt;p&gt;“&lt;em&gt;&lt;font color="#0000ff"&gt;While [James Phillips, co-founder and senior vice president of products for Couchbase, a NoSQL platform firm] agrees that there is still an experience gap with such a new technology, he believes that some of the security concerns should be at least a little quelled if organizations consider the typical use case for NoSQL. He believes that these data stores usually contain less sensitive information than the typical relational database and that they tend to have limited touch points to other applications within the enterprise network&lt;/font&gt;&lt;/em&gt;.”&lt;/p&gt;  &lt;p&gt;What in the world does “less sensitive information” mean? Philips goes on to say:&lt;/p&gt;  &lt;p&gt;“&lt;em&gt;&lt;font color="#0000ff"&gt;&amp;quot;They're using the technology not as a database per se, like you would consider perhaps an enterprise data store where you're collecting and aggregating lots of the business data of the organization that other apps are going to tie into,&amp;quot; he says. &amp;quot;Rather, if I'm building a social network or social game or building a very specific web application that has certain functionality, it tends to sit behind the firewall and it ties to this application and usually isn't available for other parts of organization to tap.&amp;quot;&lt;/font&gt;&lt;/em&gt;”&lt;/p&gt;  &lt;p&gt;The belief that security attacks only come from outside the organization is pure ignorance. The belief that security concerns will be quelled if the implementers of the technology consider the typical use case for NoSQL is another example of ignorance. And finally the characterization that only social network and social game companies are going to use NoSQL and that they don’t hold sensitive data is flabbergasting; think of the Sony incident.&lt;/p&gt;  &lt;p&gt;My intent isn’t to personally attack Mr. Phillips. I’m sure there are many people in the software industry that use the same spin when it suits them or or their company’s product. Imagine if Microsoft or IBM took the same stance as Couchbase? Couchbase considers themselves a &lt;em&gt;platform company&lt;/em&gt;. Their lack of outward concern for security is proof they are not a platform company.&lt;/p&gt;  &lt;p&gt;I want to state again that I have nothing personal toward Mr. Phillips or his company. I’ve never met him or used his company’s product. But he is simply doing NoSQL and his company a disservice by attempting to downplay the lack of security in NoSQL. &lt;/p&gt;  &lt;p&gt;As I said, adding security after the fact is extremely hard. But this doesn’t mean we should give up or position the technology as not needing it. As an IT professional it’s your responsibility to understand the benefits and limitation of all technology you implement, do a security review and ensure it meets the business requirements. Hard Stop!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10257200" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="Security" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Security/" /><category term="NoSQL" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/NoSQL/" /></entry><entry><title>SQL PASS PowerShell Session Materials</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/10/13/sql-pass-powershell-session-materials.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/10/13/sql-pass-powershell-session-materials.aspx</id><published>2011-10-13T16:51:16Z</published><updated>2011-10-13T16:51:16Z</updated><content type="html">&lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;The presentation and scripts can be found &lt;a href="https://skydrive.live.com/redir.aspx?cid=7fc6854f4cefc519&amp;amp;resid=7FC6854F4CEFC519!1326" target="_blank"&gt;here&lt;/a&gt;. Two questions came up which I couldn’t answer on the spot: 1) what is the load precedence of profiles and 2) what PowerShell books would I recommend.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Profile Load Precedence&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://msdn.microsoft.com/en-us/library/bb613488(v=VS.85).aspx" href="http://msdn.microsoft.com/en-us/library/bb613488(v=VS.85).aspx"&gt;http://msdn.microsoft.com/en-us/library/bb613488(v=VS.85).aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;The profiles are listed in load order. The most specific profiles have precedence over less specific profiles where they apply.&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;&lt;font face="Courier New"&gt;%windir%\system32\WindowsPowerShell\v1.0\profile.ps1&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font face="Courier New"&gt;%windir%\system32\WindowsPowerShell\v1.0\ Microsoft.PowerShell_profile.ps1&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font face="Courier New"&gt;%UserProfile%\My Documents\WindowsPowerShell\profile.ps1&lt;/font&gt;&lt;/li&gt;    &lt;li&gt;&lt;font face="Courier New"&gt;%UserProfile%\My Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1&lt;/font&gt;&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;PowerShell Book Suggestion&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/Learn-Windows-PowerShell-Month-Lunches/dp/1617290211/ref=sr_1_1?ie=UTF8&amp;amp;qid=1318524375&amp;amp;sr=8-1" target="_blank"&gt;Learn PowerShell in a Month of Lunches&lt;/a&gt; by Don Jones (no relation)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.amazon.com/Windows-PowerShell-Action-Second-Payette/dp/1935182137/ref=sr_1_1?s=books&amp;amp;ie=UTF8&amp;amp;qid=1318524399&amp;amp;sr=1-1" target="_blank"&gt;Windows PowerShell in Action&lt;/a&gt;, Second Edition by Bruce Payette&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10224671" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="PowerShell" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/PowerShell/" /><category term="SQL PASS" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+PASS/" /><category term="SQL Server 2012" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2012/" /></entry><entry><title>Be a Virtual SQL Server Team Member</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/09/28/be-a-virtual-sql-server-team-member.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/09/28/be-a-virtual-sql-server-team-member.aspx</id><published>2011-09-28T16:54:55Z</published><updated>2011-09-28T16:54:55Z</updated><content type="html">&lt;p&gt;I’ve been blogging &lt;a href="http://blogs.msdn.com/b/dtjones/archive/2011/08/21/help-make-sql-server-denali-the-best-release-yet.aspx"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/dtjones/archive/2011/09/20/have-you-downloaded-sql-server-denali-ctp3.aspx"&gt;here&lt;/a&gt; about testing Denali CTP3. Here is a recent picture of the SQL Server team – though it’s not everyone on the team. These are the people behind the magic of SQL Server. By downloading Denali CTP3, testing, and filing bugs you become a virtual member of this team. How cool would it be to say that you were a member of the SQL Server Team for Denali!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-54-68-metablogapi/1050.SQLServerTeamInRed_5F00_6EE8D175.png"&gt;&lt;img style="background-image: none; border-right-width: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px; padding-top: 0px" title="SQLServerTeamInRed" border="0" alt="SQLServerTeamInRed" src="http://blogs.msdn.com/cfs-file.ashx/__key/communityserver-blogs-components-weblogfiles/00-00-00-54-68-metablogapi/4375.SQLServerTeamInRed_5F00_thumb_5F00_41C3BEDA.png" width="606" height="357" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10217732" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server Code Name &quot;Denali&quot;" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Code+Name+_2200_Denali_2200_/" /></entry><entry><title>Have you Downloaded SQL Server Denali CTP3?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/09/20/have-you-downloaded-sql-server-denali-ctp3.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/09/20/have-you-downloaded-sql-server-denali-ctp3.aspx</id><published>2011-09-20T14:19:57Z</published><updated>2011-09-20T14:19:57Z</updated><content type="html">&lt;p&gt;At the end of August we released CTP3 (Community Technology Preview) of the next release of SQL Server codenamed Denali. &lt;/p&gt;  &lt;p&gt;You can download it &lt;a href="http://www.microsoft.com/download/en/details.aspx?id=26723" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;This is a feature rich CTP and is deserving of your attention, though I can’t discuss where this falls into the overall release schedule – we haven’t made any official announcements and I’m not doing so here, that’s beyond my pay grade.&lt;/p&gt;  &lt;p&gt;Download, install, exercise it and give us feedback!&lt;/p&gt;  &lt;p&gt;&lt;a href="http://blogs.msdn.com/b/dtjones/archive/2011/08/21/help-make-sql-server-denali-the-best-release-yet.aspx" target="_blank"&gt;Here&lt;/a&gt; are some areas to delve into and how to give us feedback.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10214082" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server Code Name &quot;Denali&quot;" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Code+Name+_2200_Denali_2200_/" /></entry><entry><title>Help Make SQL Server “Denali” The Best Release Yet!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/08/21/help-make-sql-server-denali-the-best-release-yet.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/08/21/help-make-sql-server-denali-the-best-release-yet.aspx</id><published>2011-08-21T18:28:00Z</published><updated>2011-08-21T18:28:00Z</updated><content type="html">&lt;p&gt;Bugs reported by the community have played a huge role in the amazing quality of past releases of SQL Server. In SQL Server 2008 we fixed over 1,000 bugs submitted by the SQL Server community prior to release. And in SQL Server 2008 R2 we fixed over 300 Community submitted bugs prior to the release.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style="color: #ff0000; font-size: x-small;" color="#ff0000" size="2"&gt;Now is the time to test new features and send us feedback!&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Download SQL Server "Denali" CTP3 - &lt;a href="https://www.microsoft.com/betaexperience/pd/SQLDCTP3CTA/enus/"&gt;here&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;&lt;a href="https://connect.microsoft.com/SQLServer/Feedback" target="_blank"&gt;Microsoft Connect&lt;/a&gt; is the place to submit bugs. This tool connects right into our bug tracking database, &lt;a href="http://msdn.microsoft.com/en-us/vstudio/ff637362" target="_blank"&gt;Team Foundation Server&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To promote your participation in testing SQL Server Code Name &amp;ldquo;Denali&amp;rdquo; we are running the &lt;a href="http://blogs.technet.com/b/dataplatforminsider/archive/2011/08/19/announcing-the-sql-server-code-name-denali-feedback-challenge.aspx" target="_blank"&gt;Feedback Challenge&lt;/a&gt;.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Starting on Friday August 19, we will be sending &lt;b&gt;SQL Server gifts packs valued at $30&lt;/b&gt; to each person who submits bugs or provides feedback on how we can improve SQL Server Code Name &amp;ldquo;Denali&amp;rdquo; up through August 31, 2011 (&lt;i&gt;or to the first 300 respondents&lt;/i&gt;).&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Here are a list of areas we want your feedback:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Database Engine Features&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#AlwaysOn" target="_blank"&gt;AlwaysOn&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#BeyondRelational" target="_blank"&gt;Beyond Relational&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#DevMgmt" target="_blank"&gt;Development &amp;amp; Management&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#Others" target="_blank"&gt;Others&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;BI Features&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#Crescent" target="_blank"&gt;Project Crescent&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#AS" target="_blank"&gt;Analysis Services&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Other Areas &lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#ProductUpdate" target="_blank"&gt;Product Update&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#DQS" target="_blank"&gt;Data Quality Services&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#MDS" target="_blank"&gt;Master Data Services&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;AlwaysOn&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff877884(v=SQL.110).aspx" target="_blank"&gt;AlwaysOn Availability Groups&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Sync/Async data movement configurations&lt;/li&gt;
&lt;li&gt;Automatic failover with Sync&lt;/li&gt;
&lt;li&gt;Quorum configurations and Disaster Recovery&lt;/li&gt;
&lt;li&gt;Client connectivity configuration via AG Listener&lt;/li&gt;
&lt;li&gt;Setup, Deployment, Management experiences&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff878716(v=SQL.110).aspx" target="_blank"&gt;AlwaysOn Failover Cluster Instances Enhancements&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Stretch Clustering&lt;/li&gt;
&lt;li&gt;Configurable Failure Detection Levels&lt;/li&gt;
&lt;li&gt;Failover/Recovery time enhancements&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh231669(v=SQL.110).aspx" target="_blank"&gt;Windows Server Core support&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Manageability (&lt;a href="http://msdn.microsoft.com/en-us/library/gg509103(v=SQL.110).aspx" target="_blank"&gt;Management Studio&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ff878391(v=SQL.110).aspx" target="_blank"&gt;PowerShell&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/hh213474(v=SQL.110).aspx" target="_blank"&gt;Monitoring&lt;/a&gt;, &lt;a href="http://msdn.microsoft.com/en-us/library/ff877941(v=SQL.110).aspx" target="_blank"&gt;T-SQL&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Beyond Relational&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff929144(v=SQL.110).aspx" target="_blank"&gt;FileTable functionality and performance&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg492075(v=SQL.110).aspx" target="_blank"&gt;Semantic Search&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc645577(v=SQL.110).aspx" target="_blank"&gt;Fulltext Search functionality &amp;amp; performance&lt;/a&gt;&amp;nbsp;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Development &amp;amp; Management&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff929071(v=sql.110).aspx" target="_blank"&gt;Contained Databases&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/data/gg427686" target="_blank"&gt;Project &amp;ldquo;Juneau&amp;rdquo;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc645579(v=sql.110).aspx" target="_blank"&gt;Management Studio&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc645579(v=sql.110).aspx" target="_blank"&gt;PowerShell 2.0 Support&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/cc645579(v=sql.110).aspx" target="_blank"&gt;Data-tier Application (DAC)&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Others&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg492088(v=SQL.110).aspx" target="_blank"&gt;Columnstore Indexes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/b/sqlexpress/archive/2011/07/12/introducing-localdb-a-better-sql-express.aspx" target="_blank"&gt;LocalDB&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Extended Events Profiler &amp;amp; &lt;a href="http://msdn.microsoft.com/en-us/library/ff878183(v=SQL.110).aspx" target="_blank"&gt;Distributed Replay&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Project Crescent&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://social.technet.microsoft.com/wiki/contents/articles/project-crescent-overview.aspx" target="_blank"&gt;More information on Project Crescent&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Analysis Services&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh212945(v=SQL.110).aspx" target="_blank"&gt;Tabular Modeling&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/hh230811(v=SQL.110).aspx" target="_blank"&gt;Tabular Model Solutions&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/gg492139(v=SQL.110).aspx" target="_blank"&gt;Extended Events&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Product Update&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://blogs.msdn.com/b/petersad/archive/2011/07/13/provide-feedback-on-the-sql-server-code-name-denali-product-update-feature.aspx" target="_blank"&gt;More information on testing the new Product Update feature&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Data Quality Services&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ff877925(v=SQL.110).aspx" target="_blank"&gt;More information on Data Quality Services&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Master Data Services&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://msdn.microsoft.com/en-us/library/ee633763(v=SQL.110).aspx" target="_blank"&gt;More information on Master Data Services&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10198277" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="Denali" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Denali/" /><category term="SQL Server Express" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Express/" /><category term="SQL Server Code Name &amp;quot;Denali&amp;quot;" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Code+Name+_2600_quot_3B00_Denali_2600_quot_3B00_/" /></entry><entry><title>SQL Server codename “Denali”–“Product Update”</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/07/19/sql-server-codename-denali-product-update.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/07/19/sql-server-codename-denali-product-update.aspx</id><published>2011-07-19T16:18:42Z</published><updated>2011-07-19T16:18:42Z</updated><content type="html">&lt;p&gt;There’s a great new feature in the next release of SQL Server (codename “Denali”) which integrates the latest product updates into the initial installation experience. This feature came online in the CTP3 release.&lt;/p&gt;  &lt;p&gt;We need your help testing this feature. &lt;/p&gt;  &lt;p&gt;Peter Saddow, of the Deployment Platform team, has a &lt;a href="http://blogs.msdn.com/b/petersad/archive/2011/07/13/product-update-in-sql-server-code-named-denali.aspx" target="_blank"&gt;comprehensive blog post&lt;/a&gt; detailing how to test this feature, therefore I won’t repeat it here.&lt;/p&gt;  &lt;p&gt;Thanks in advance for helping make “Denali” the best release of SQL Server yet.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10187937" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server Code Name &quot;Denali&quot;" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Code+Name+_2200_Denali_2200_/" /></entry><entry><title>Day 13 on the Job</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/07/06/day-13-on-the-job.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/07/06/day-13-on-the-job.aspx</id><published>2011-07-06T17:17:23Z</published><updated>2011-07-06T17:17:23Z</updated><content type="html">&lt;p&gt;Today is my 13th day in the new job as the community lead for the Business Platform Division. It has been a filled 13 days – in a very good way. I’ve been working closely with my team to get educated on community and to begin to formulate our community strategy. This includes identifying which communities we should engage with and how, the use of various existing technologies (Twitter, LinkedIn, MSDN Forums. Stock Overflow and others) and new technologies we need to invent.&lt;/p&gt;  &lt;p&gt;As we’re in the early stages I have yet to reach any conclusions on which communities we should engage with and how we should engage. &lt;/p&gt;  &lt;p&gt;This means it’s the perfect time for you to share your thoughts and insights. Some of the areas I’d like to hear from you include:&amp;#160; Which communities do you spend your time? Which hashtags do you follow? What LinkedIn groups are you part of? Where would you like us to engage? What would you like to see us do more/less of?&lt;/p&gt;  &lt;p&gt;I’m a big believer in listening to customers and users who ultimately make a community strong and vibrant. While I can’t respond to each, I promise you I read each and every comment. Thank you in advance for sharing. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10183667" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="Community" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Community/" /><category term="Business Platform Division" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Business+Platform+Division/" /></entry><entry><title>MVPs: Evangelists in Sheep’s Clothing?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/06/27/mvps-evangelists-in-sheep-s-clothing.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/06/27/mvps-evangelists-in-sheep-s-clothing.aspx</id><published>2011-06-27T18:28:01Z</published><updated>2011-06-27T18:28:01Z</updated><content type="html">&lt;p&gt;I was recently talking to a co-worker and I characterized MVPs as evangelists, among other things. I got a very strong reaction - negative. I know full well this posting is going to rub some MVPs the wrong way – like petting a cat against the grain! However, I like stirring things up a bit to see what people really think or you can simply say I’m a glutton for punishment.&lt;/p&gt;  &lt;p&gt;For whatever reason the words evangelism and evangelist, in the tech community, have been casted in a negative light.&amp;#160; But I happen to really like them to describe certain people in the SQL Server community, namely MVPs.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://www.merriam-webster.com/dictionary"&gt;Merriam-Webster&lt;/a&gt; defines &lt;em&gt;evangelist&lt;/em&gt; as &lt;em&gt;an enthusiastic advocate&lt;/em&gt;. The &lt;a href="http://encarta.msn.com/encnet/features/dictionary/dictionaryhome.aspx"&gt;Encarta World English Dictionary&lt;/a&gt; defines &lt;em&gt;Evangelism&lt;/em&gt; as&lt;em&gt; great enthusiasm, fervor or zeal for a particular cause.&lt;/em&gt; &lt;/p&gt;  &lt;p&gt;Isn’t this a huge part of what MVPs are? After all why would they spend their own money traveling to conferences both big (SQL PASS) and small (SQL Saturday)? Why would they go on SQL Server themed cruises? Why would they spend as much time as they do blogging and answering questions on #sqlhelp?&lt;/p&gt;  &lt;p&gt;I’ve said &lt;a href="http://blogs.msdn.com/b/dtjones/archive/2010/10/16/sql-server-mvps-thank-you-for-what-you-do.aspx"&gt;here&lt;/a&gt; before I believe MVPs do a fantastic and selfless job in the community. They are an incredibly important part of the community. Their technical and operational knowledge of the product is top notch. Their passion shines through on a daily basis. &lt;/p&gt;  &lt;p&gt;Take the characterization as evangelist as a complement. That’s the way it’s intended.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10179560" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="MVPs" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/MVPs/" /></entry><entry><title>Pilot Projects</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/06/15/pilot-projects.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/06/15/pilot-projects.aspx</id><published>2011-06-15T20:43:57Z</published><updated>2011-06-15T20:43:57Z</updated><content type="html">&lt;p&gt;I spent the first eight years of my career in enterprise IT for a Fortune 15 company. Back then IT was a vibrant work environment. Money was flowing into IT to fund resources, software, hardware and vendors. Today it’s a different story. The mantra for the past 11 years has been “do more with less”. It’s good business sense to tighten budgets when the business starts to see warning signs of market stagnation. However, if the business does not begin to fund new projects to look at new technologies it will find itself in a difficult situation. &lt;/p&gt;  &lt;p&gt;The first problem is being on outdated hardware and software. This doesn’t just exist on the desktop but also in the data center. There are still an incredible number of system still running Windows XP (I don’t have any specific numbers so this is anecdotal evidence). Windows XP was released at the end of 2001. I also talk to a number of people who have laptops or desktops that are four or more years old. Back in the data center the story is a bit better. Again this is anecdotal evidence but I’m seeing the instances of Windows Server 2003 dwindle and I see almost no Windows Server 2000. As for SQL Server, while there is still a somewhat hefty number of databases on SQL Server 2000 that number it dropping pretty rapidly, though not as fast as I’d like to see. I’m not saying that companies have to be on the bleeding edge of technology, but being on any technology that’s more than six or seven years old is plain negligent. &lt;/p&gt;  &lt;p&gt;The second problem is outdated applications. When I was in IT our primary mission was to support the business. This entailed updating existing applications to support changing business requirements and writing new applications in support of new business opportunities and needs. There’s been plenty of articles and blog posts on the &lt;em&gt;consumerization&lt;/em&gt; of IT. This effectively means for the first time in the history of IT consumers have access to more cutting edge technology than what IT is making available to solve business problems. I blame this back on the extremely tight IT budgets and the lack of vision by company leaders to see the value of funding IT.&lt;/p&gt;  &lt;p&gt;So far I haven’t said a word about pilot projects – the title of this posting. Before 2000 my company used pilot projects to try out new technologies (hardware and software). We would start with small targeted projects using well defined metrics to track success. Some of them were successful and resulted in broader rollout and usage. Others, the majority, were harvested for learning and then shelved. The point isn’t to track your success rate but rather to keep trying out new things. Almost every consumer products company (think P&amp;amp;G) does this with new products and they’re not afraid to shoot poor performing products in the head, quickly. &lt;/p&gt;  &lt;p&gt;I like the mantra of “fail fast”. It sets the right mindset that failures are going to happen but without them change and innovation doesn’t happen. In IT this is equivalent to running pilot projects. Take Windows Azure, for example. Many of the survey results I see ask the wrong sets of questions which I believe lead ITDMs (IT Decision Makers) down the wrong path and cloud their thinking (pun intended). Every company should either have Cloud Computing already baked into their IT strategy or at the very least have a handful of pilot projects trying out different cloud providers to solve various business problems. &lt;/p&gt;  &lt;p&gt;Today I wouldn’t go work for a company that had its head in the sand regarding cloud. And I certainly wouldn’t work for a company that was still running Windows XP. Both speak volumes about the IT leadership and the value (or lack there of) the company places on technology.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10175021" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="General" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/General/" /></entry><entry><title>SQL Server Code Name “Denali” – Supported OSes and Upgrade Paths</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/06/10/sql-server-code-name-denali-supported-oses-and-upgrade-paths.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/06/10/sql-server-code-name-denali-supported-oses-and-upgrade-paths.aspx</id><published>2011-06-10T16:41:15Z</published><updated>2011-06-10T16:41:15Z</updated><content type="html">&lt;p&gt;We are looking for feedback on three items for SQL Server Code Name “Denali”. First, are the &lt;strong&gt;supported OSes&lt;/strong&gt;. Second, are the &lt;strong&gt;supported upgrade paths&lt;/strong&gt;. Third, is the way the &lt;strong&gt;installer handles unsupported OSes and upgrade paths&lt;/strong&gt;. Specifically we want to know if these will slow down your adoption of SQL Server Code Name “Denali”.&lt;/p&gt;  &lt;p&gt;1) The current support matrix for OSes is as follows:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Windows Vista SP2 or later &lt;/li&gt;    &lt;li&gt;Windows Server 2008 SP2 or later &lt;/li&gt;    &lt;li&gt;Windows Server 2008 R2 SP1 or later &lt;/li&gt;    &lt;li&gt;Windows 7 SP1 or later &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;2) Denali will support upgrading from these SQL Server versions:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;SQL Server 2005 SP4 or later &lt;/li&gt;    &lt;li&gt;SQL Server 2008 SP2 or later &lt;/li&gt;    &lt;li&gt;SQL Server 2008 R2 SP1 or later &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;3) The installer is going to block installation on unsupported OSes and it will block unsupported upgrade paths.&lt;/p&gt;  &lt;p&gt;If the current support matrix for OSes, the current support matrix for upgrade, or the installation blocks will delay your adoption of of SQL Server called “Denali”, please provide this feedback to us! You can provide us this feedback by adding a comment below or submitting the feedback through the &lt;a href="https://connect.microsoft.com/SQLServer"&gt;SQL Server Connect&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10173402" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server Code Name &quot;Denali&quot;" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Code+Name+_2200_Denali_2200_/" /></entry><entry><title>Forgot Your Password?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/06/06/forgot-your-password.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/06/06/forgot-your-password.aspx</id><published>2011-06-06T23:32:18Z</published><updated>2011-06-06T23:32:18Z</updated><content type="html">&lt;p&gt;I’ve seen three basic patterns for handling forgotten web site passwords:&lt;/p&gt;  &lt;ol&gt;   &lt;li&gt;Send a &lt;em&gt;change password&lt;/em&gt; link to the email address on file &lt;/li&gt;    &lt;li&gt;Ask one or more challenge questions (or personal information) to &lt;em&gt;unlock&lt;/em&gt; the change password screen &lt;/li&gt;    &lt;li&gt;Send the password, in plain text, to the email address on file &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;There are different variations of these and other patterns do exist but these are the predominate ones I’ve encountered. I don’t have any stats on how prevalent each is or the secureness of each, however, I have my opinion. &lt;/p&gt;  &lt;p&gt;Keep in mind that no password reset system is 100% foolproof. If someone really wants to get in to your account they probably can hack it, although the effort to hack a single account is very likely not worth the effort. For example, an email address can be hacked and the email generated from 1 and 3 could be intercepted. Through a bit of social engineering and research the answers for the second pattern could be had. Again this is probably not worth the effort for a single account.&lt;/p&gt;  &lt;p&gt;Of the three though if I had to pick one I like the least it’s the third one. Having my password sent to me in clear text is disturbing from two aspects. First, anyone sniffing the network could intercept the password. Again this probably isn’t worth the time for a single account. The more disturbing aspect is how the password is stored in the site’s repository. Specifically I have no idea if the password is being stored in plain text or if the site is using a two-way encryption method. &lt;/p&gt;  &lt;p&gt;Both methods of managing passwords are simply bad practice. Why do I say that? It’s simple, if the password can be accessed in either clear text or is stored unencrypted the site is subject to an attack on all its accounts. If I were a hacker (regardless of the color of my hat) these are the sites I would target. Rather than going after a single account at a time this method allows me to go after all of the accounts. &lt;/p&gt;  &lt;p&gt;As a website user there isn’t a whole lot you can do to protect your account. Probably the best thing you can do, which I do, is utilize different passwords for different sites. This adds to your password management burden but this way if one account is compromised your other accounts have better odds of remaining safe and sound.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10171810" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="General" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/General/" /><category term="Security" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Security/" /></entry><entry><title>Best Practice Policies for Policy-Based Management</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/05/27/best-practice-policies-for-policy-based-management.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/05/27/best-practice-policies-for-policy-based-management.aspx</id><published>2011-05-27T16:34:25Z</published><updated>2011-05-27T16:34:25Z</updated><content type="html">&lt;p&gt;Policy-Based Management (PBM) was introduced with SQL Server 2008 – it’s a declarative system for ensuring the system configuration hasn’t drifted from the original configuration intent.&amp;#160; You can read more about Policy-Based Management in SQL Server Books Online, &lt;a href="http://msdn.microsoft.com/en-us/library/bb510667.aspx"&gt;here&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;To help people get started with PBM and to promote best practices we provide a set of policies that are installed with the product. On an x64 machine you can find them in this directory: C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Policies. Here you’ll find policies for Analysis Services, the Database Engine, and Reporting Services. The policies for Analysis Services and Reporting Services focus on surface area configuration, the policies for the Database Engine include a more comprehensive set of policies. &lt;/p&gt;  &lt;p&gt;The Database Engine policies can be executed in ad hoc fashion or they can be imported into the Database Engine instance and configured for automation. You can learn more about the Best Practice policies in SQL Server Books Online, &lt;a href="http://msdn.microsoft.com/en-us/library/ee342165.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Regardless if you are new to PBM or a seasoned veteran you can leverage the best practice policies as is or as a starting point for your custom policies. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10169137" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="Policy" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Policy/" /><category term="SQL Server 2008" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008/" /><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server 2008 R2" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008+R2/" /></entry><entry><title>Loading SQL Server Snapins into your PowerShell Session</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/03/31/loading-sql-server-snapins-into-your-powershell-session.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/03/31/loading-sql-server-snapins-into-your-powershell-session.aspx</id><published>2011-03-31T18:16:51Z</published><updated>2011-03-31T18:16:51Z</updated><content type="html">&lt;p&gt;Caveat: I don’t write code for a living. But I do know how to get things done, usually using brute force. &lt;/p&gt;  &lt;p&gt;SQLPS.exe is a decent environment, but sometimes I want to work in the default PowerShell environment. But if I want to work with SQL Server in the default PowerShell shell it means I need to load the SQL Server snapins into my session. Just because I’m at MS doesn’t mean I intuitively know all of the answers, though I can usually find someone who does. Sometimes, though I like to try and figure it out on my own. To feel the pain of a real user. &lt;/p&gt;  &lt;p&gt;I’ll cut to the chase. There are probably many blog postings and articles on this already but getting a few more to pop-up in the search results doesn’t hurt. So here it goes. There are two SQL Server Snapins you need to load into your PowerShell session: SQLServerProviderSnapin100 and SQLServerCmdletSnapin100. These ship with SQL Server 2008 and SQL Server 2008 R2.&lt;/p&gt;  &lt;p&gt;The Provider snapin is explained &lt;a href="http://msdn.microsoft.com/en-us/library/cc281947.aspx"&gt;here&lt;/a&gt;. The Cmdlet snapin is explained &lt;a href="http://msdn.microsoft.com/en-us/library/cc281847.aspx"&gt;here&lt;/a&gt;. Now depending upon what you’re doing in your script you may need to load one, the other, or both. I generally just load both so I don’t surprise myself when I attempt to do something and it fails. You can also add the loading to your &lt;a href="http://msdn.microsoft.com/en-us/library/bb613488(VS.85).aspx"&gt;PowerShell profile&lt;/a&gt; or keep it in each of your scripts. I personally like to keep it in my scripts so that when I share scripts with other people (or move them to another machine) everything just works. In other words it makes the scripts more portable. &lt;/p&gt;  &lt;p&gt;Enough talk, here’s what you add to your scripts. I’m expecting feedback on how to simplify the logic!&lt;/p&gt;  &lt;p&gt;&lt;font color="#000080" face="Courier New"&gt;&lt;font color="#008000"&gt;# Load SqlServerProviderSnapin100        &lt;br /&gt;&lt;/font&gt;&lt;/font&gt;&lt;font color="#000080" face="Courier New"&gt;if (&lt;font color="#a5a5a5"&gt;!&lt;/font&gt;(&lt;font color="#0000ff"&gt;Get-PSSnapin&lt;/font&gt; &lt;font color="#a5a5a5"&gt;|&lt;/font&gt; ?{&lt;font color="#ff0000"&gt;$_&lt;/font&gt;.name &lt;font color="#a5a5a5"&gt;-eq&lt;/font&gt; &lt;font color="#c0504d"&gt;'SqlServerProviderSnapin110'&lt;/font&gt;}))       &lt;br /&gt;{       &lt;br /&gt;if(&lt;font color="#0000ff"&gt;Get-PSSnapin&lt;/font&gt; -registered &lt;font color="#a5a5a5"&gt;|&lt;/font&gt; ?{&lt;font color="#ff0000"&gt;$_&lt;/font&gt;.name &lt;font color="#a5a5a5"&gt;-eq&lt;/font&gt; &lt;font color="#c0504d"&gt;'SqlServerProviderSnapin110'&lt;/font&gt;})       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;add-pssnapin&lt;/font&gt; &lt;font color="#9b00d3"&gt;SqlServerProviderSnapin100        &lt;br /&gt;&lt;/font&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;Loading SqlServerProviderSnapin100 in session&amp;quot;&lt;/font&gt;       &lt;br /&gt;}       &lt;br /&gt;else       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;SqlServerProviderSnapin100 is not registered with the system.&amp;quot;&lt;/font&gt; -Backgroundcolor &lt;font color="#9b00d3"&gt;Red&lt;/font&gt; –Foregroundcolor &lt;font color="#9b00d3"&gt;White&lt;/font&gt;       &lt;br /&gt;&amp;#160;&amp;#160; break       &lt;br /&gt;}       &lt;br /&gt;}       &lt;br /&gt;else       &lt;br /&gt;{       &lt;br /&gt;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;SqlServerProviderSnapin100 is already loaded&amp;quot;&lt;/font&gt;       &lt;br /&gt;}&amp;#160; &lt;br /&gt;&amp;#160;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font color="#000080" face="Courier New"&gt;&lt;font color="#008000"&gt;# Load SqlServerCmdletSnapin100&lt;/font&gt;       &lt;br /&gt;if (&lt;font color="#a5a5a5"&gt;!&lt;/font&gt;(&lt;font color="#0000ff"&gt;Get-PSSnapin&lt;/font&gt; &lt;font color="#a5a5a5"&gt;|&lt;/font&gt; ?{&lt;font color="#ff0000"&gt;$_&lt;/font&gt;.name &lt;font color="#a5a5a5"&gt;-eq&lt;/font&gt; &lt;font color="#c0504d"&gt;'Sq&lt;/font&gt;&lt;font color="#c0504d"&gt;lServerCmdletSnapin100'&lt;/font&gt;}))       &lt;br /&gt;{       &lt;br /&gt;if(&lt;font color="#0000ff"&gt;Get-PSSnapin&lt;/font&gt; -registered &lt;font color="#a5a5a5"&gt;|&lt;/font&gt; ?{&lt;font color="#ff0000"&gt;$_&lt;/font&gt;.name &lt;font color="#a5a5a5"&gt;-eq&lt;/font&gt; &lt;font color="#c0504d"&gt;'SqlServerCmdletSnapin100'&lt;/font&gt;})       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;add-pssnapin&lt;/font&gt; &lt;font color="#8000ff"&gt;SqlServerCmdletSnapin100&lt;/font&gt;       &lt;br /&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;Loading SqlServerCmdletSnapin100 in session&amp;quot;&lt;/font&gt;       &lt;br /&gt;}       &lt;br /&gt;else       &lt;br /&gt;{       &lt;br /&gt;&amp;#160;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;SqlServerCmdletSnapin100 is not registered with the system.&amp;quot;&lt;/font&gt;       &lt;br /&gt;&amp;#160;&amp;#160; break       &lt;br /&gt;}       &lt;br /&gt;}       &lt;br /&gt;else       &lt;br /&gt;{       &lt;br /&gt;&amp;#160; &lt;font color="#0000ff"&gt;write-host&lt;/font&gt; &lt;font color="#c0504d"&gt;&amp;quot;SqlServerCmdletSnapin100 &lt;/font&gt;&lt;font color="#c0504d"&gt;is already loaded&amp;quot;        &lt;br /&gt;&lt;/font&gt;}       &lt;br /&gt;&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10148338" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server 2008" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008/" /><category term="PowerShell" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/PowerShell/" /><category term="SQL Server 2008 R2" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008+R2/" /></entry><entry><title>Oy vey – Poor Security Habits Highlighted Again</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2011/03/28/oy-vey-poor-security-habits-highlighted-again.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2011/03/28/oy-vey-poor-security-habits-highlighted-again.aspx</id><published>2011-03-28T20:09:22Z</published><updated>2011-03-28T20:09:22Z</updated><content type="html">&lt;p&gt;The March 2011 issues of Database Trends and Application has an article that highlights the results of a new survey of DBAs and DBA Managers that reveals complacency results in lax oversight of sensitive information. You can read the article &lt;a href="http://www.dbta.com/Articles/Editorial/Trends-and-Applications/Information-Security-Hampered-by-Culture-of-Complacency---and-Misunderstanding--74249.aspx"&gt;here&lt;/a&gt;. While every aspect of the research finding is is disturbing what I found most disturbing is the amount of real “production” data that is used outside of production systems. &lt;/p&gt;  &lt;p&gt;I find this so disturbing because it means the likelihood that &lt;em&gt;my&lt;/em&gt; personal information is living in development and test systems is pretty high. Data obfuscation techniques have been around for a long time. I did a Bing search on “SQL Server data obfuscation”, the first result back is this &lt;a href="http://www.simple-talk.com/sql/database-administration/obfuscating-your-sql-server-data/"&gt;article&lt;/a&gt; by &lt;a href="http://www.simple-talk.com/author/john-magnabosco/"&gt;John Magnabosco&lt;/a&gt;. It’s a good article that explains how you can build your own data obfuscation capabilities so data can be safely moved outside the production environment. At the end of the article he mentions a product from Red Gate called &lt;a href="http://www.red-gate.com/products/sql-development/sql-data-generator/"&gt;SQL Data Generator&lt;/a&gt;. I haven’t used this product but Red Gate offers a free trial and a single user license is under $300 (according to their web site). &lt;/p&gt;  &lt;p&gt;There are a lot of DBAs out there who take their craft and their role as data steward very seriously. They implement strict standards for access production data and handling of production data. Then there are those who don’t, either because they don’t their craft seriously or because they don’t know any better. These are the DBAs who need training, coaching and mentoring. Which type of DBA are you?&lt;/p&gt;  &lt;p&gt;Remember, your personal data is under the management of both types of DBAs!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10146820" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="Security" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Security/" /></entry><entry><title>Changing Service Account &amp; Service Account Password</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/12/15/changing-service-account-amp-service-account-password.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/12/15/changing-service-account-amp-service-account-password.aspx</id><published>2010-12-15T18:26:35Z</published><updated>2010-12-15T18:26:35Z</updated><content type="html">&lt;p&gt;I recently botched an answer about why one should use SQL Configuration Manager (SQLCM) over Service Control Manager (SCM) to change service accounts and/or service account passwords for SQL Server. Let me attempt to redeem myself.&lt;/p&gt;  &lt;p&gt;If your running SQL Server 2008 or later and your running on Windows Vista or later (Win7 or Win2K8) all resources (Folders, Files, Reg Keys, etc) are ACL’d using the Service SID. Therefore, regardless of the account the service is running as it will always have access to the necessary resources. SQLCM, however, does a bit of magic under the covers when you change the password on a service account to avoid a service restart. There was a bug in SQLCM that blocked this behavior but it was fixed in a CU (&lt;a href="http://support.microsoft.com/kb/2345451"&gt;SQL Server 2008 R2 CU 4&lt;/a&gt; to be exact) and here’s the &lt;a href="http://support.microsoft.com/kb/2397020/"&gt;KB Article&lt;/a&gt; on the fix.&lt;/p&gt;  &lt;p&gt;If you’re running on SQL Server 2005 or running on earlier versions of the OS (pre Vista; WinXP &amp;amp; Win2K3) ACLing is done via groups and the group membership is maintained through SQLCM. Therefore, changing the Service Account through SCM won’t update the group membership and you’ll run in to permission issues.&lt;/p&gt;  &lt;p&gt;I hope this clarifies the difference between using SQLCM and SCM. And if I’ve botched it for a second time, I prefer my crow medium-well.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10105463" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /></entry><entry><title>SQL Server Express: Dev or Prod?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/12/12/sql-server-express-dev-or-prod.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/12/12/sql-server-express-dev-or-prod.aspx</id><published>2010-12-13T02:31:52Z</published><updated>2010-12-13T02:31:52Z</updated><content type="html">&lt;p&gt;Most people I’ve spoken to have at least heard of the &lt;a href="http://www.microsoft.com/sqlserver/en/us/editions/express.aspx" target="_blank"&gt;Express&lt;/a&gt; edition. The next question I ask is where they’re running it: development or production? The answer is usually &lt;em&gt;both&lt;/em&gt;. But when I drill into the production use it turns out that most of the time Express is running in production because of a 3rd party application not because of an in-house developed app. When I question why it hasn’t been used for in-house apps the response is one of three. The first reason is they have no idea why and realize that maybe they should consider it. The second reason is, they have ample capacity on existing servers/instances and to keep things simple they add the database to the existing environment. The last reason I hear has to do with the limits placed on Express. Let’s take a look at each of these in a little more detail:&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Just Don’t Think of Using Express&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This one baffles me. I can understand if you are needing features that aren’t available in Express (transparent data encryption, data/backup compression, etc.) but if Express is the right tool why not use it? It’s part of your toolbox – know your tools!&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Existing Excess Capacity&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;This is a compelling reason to ignore Express. You’ve paid for an existing SQL Server license so why not get the highest utilization you can. Enough said.&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;Express Limits&lt;/strong&gt;&amp;#160;&lt;/p&gt;  &lt;p&gt;This one is interesting in that I find people with outdated information. The limits for &lt;a href="http://msdn.microsoft.com/en-us/library/cc645993.aspx#Scalability" target="_blank"&gt;SQL Server Express 2008 R2&lt;/a&gt; are:&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Database Size: 10 GB &lt;/li&gt;    &lt;li&gt;Processors: 1 &lt;/li&gt;    &lt;li&gt;Memory: 1 GB &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;Now I agree there aren’t too many tier-1 (mission critical) applications that fall into this category of resource usage. However, the number of non-tier-1 application grossly out numbers the count of tier-1 apps and there are a lot of non-tier-1 applications that do. &lt;/p&gt;  &lt;p&gt;Why is any of this interesting or important? SQL Server Express is the exact same codebase as the other editions. It’s fully tested and fully supported. All of the familiar tools (Management Studio, SQLCMD, and PowerShell) work against it. It’s good for development environments and even more importantly it’s completely capable for production environments. In certain situations you may not even consider Express and you may find yourself introducing yet another RDBMS into your environment. In the long run managing multiple RDBMS will be more expensive. Obviously if you have no other option, for example, your using a framework or app that doesn’t yet support SQL Server, you’ve got to do what you’ve got to do. Just don’t make a decision out of ignorance. Express is a solid edition of SQL Server for all environments: development, test, and yes, even production.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10103840" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="SQL Server Express" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+Express/" /></entry><entry><title>Zero Tolerance for Ignorance, Laziness and Unprofessionalism</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/12/08/zero-tolerance-for-ignorance-laziness-and-unprofessionalism.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/12/08/zero-tolerance-for-ignorance-laziness-and-unprofessionalism.aspx</id><published>2010-12-08T14:41:39Z</published><updated>2010-12-08T14:41:39Z</updated><content type="html">&lt;p&gt;How many databases in the world do you think are storing your personal information? Tens? Hundreds? Thousands? I have no clue what the answer is but my guess is it’s closer to thousands than tens. Why is this an interesting question? &lt;/p&gt;  &lt;p&gt;In my line of work I speak with lots of DBAs and I’m absolutely shocked how many times I hear a DBA say they never change the password on service accounts or admin accounts. I had one DBA admit they hadn’t changed an Admin password in almost ten years! The reason almost always given is “it’s hard” &lt;/p&gt;  &lt;p&gt;To be blunt this is ignorant, lazy, unprofessional and borderline negligent. I won’t apologize for being harsh and I’m sure some readers will come away offended by this; a risk I’m willing to take given the seriousness of the topic. DBAs are highly skilled and well paid professionals – relatively speaking – and they should take the responsibility of data steward as serious as a heart attack. &lt;/p&gt;  &lt;p&gt;I’m sure some of you will fire back that we (Microsoft) should provide better tools for this. I don’t disagree, but this is not an acceptable excuse for poor security practices. A simple search, using your favorite search engine, will yield thousands of results for how to change service accounts and password and there are even lots of sample scripts (VB, PowerShell, etc.). There is no excuse for sticking your head in the sand and repeating “it’s hard” over and over. You’re sitting on a ticking time bomb with no clue when it’ll go off. I hope you keep your resume up to date.&lt;/p&gt;  &lt;p&gt;This isn’t a global indictment of all DBAs. There are lots of DBAs who approach their responsibility with seriousness and professionalism. They rotate service accounts and change passwords on a regular interval (45 days, 60 days, 90 days, etc.). I’m certain the first time they did this it was painful but each time it became more automated, easier, and took less time. &lt;/p&gt;  &lt;p&gt;There are exceptions to every rule so if you’re following a different practice for securing logins kudos! But if you have logins that have or are allowed to have stale passwords I urge you, no, I beg you to take immediate action! Take action before it’s too late – before you have a security breach. I’m sure your like me and you don’t want your data in unauthorized hands.&lt;/p&gt;  &lt;p&gt;Finally, if you’re one of these DBAs with lax security policies you better hope I never end up managing your group; your first task will be to update your resume. Something things deserve zero tolerance.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10102030" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="Security" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Security/" /></entry><entry><title>Vendor Lock In or Ignorant Design?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/12/06/vendor-lock-in-or-ignorant-design.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/12/06/vendor-lock-in-or-ignorant-design.aspx</id><published>2010-12-06T16:54:18Z</published><updated>2010-12-06T16:54:18Z</updated><content type="html">&lt;p&gt;I often hear people say '”I’m not going to use Microsoft stuff because the don’t want to become victim of vendor lock in.” They often chose “open source” alternatives for pieces of the stack (web server and database to name a few). This isn’t necessarily a bad thing so long as they’ve done their homework, landed on the right design and chose the runtime that best met their needs. However, this seems to rarely be the case. They either assume that if they use one MS component they have to use them all. And second once they choose a stack they implement a poor design that locks them into that particular stack.&lt;/p&gt;  &lt;p&gt;Let’s take for example the DB layer. Either you don’t know that MS has a free edition of SQL Server (&lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=967225eb-207b-4950-91df-eeb5f35a80ee" target="_blank"&gt;Express&lt;/a&gt;) or you don’t care and you’re just going to use MySQL or PostgreSQL because that what everyone else seems to be using. That’s fine, you should feel comfortable with your decision and the best way to achieve that is to set forth some decision criteria and evaluate each against those criteria picking the one that ranks highest. Ok, you’ve got your DB engine picked, you picked your web server (Apache) and you’re going to code in PHP. &lt;/p&gt;  &lt;p&gt;You have three choices for how to access the DB from your code: 1) straight in-line SQL which is platform specific, 2) use PDO (more on that below) or 3) write a full blown data abstraction layer. &lt;/p&gt;  &lt;p&gt;The first one will get you started the fastest and as long as you never want to switch to a different backend you should be fine. But be careful there are some things like SQL injection that you’ll have to guard against. The third one, a custom abstraction layer, will be the most expensive one, if you’re going this route you probably have some very specific requirements you need to code for. Or you just like writing data abstraction layers for fun. &lt;/p&gt;  &lt;p&gt;The second one, PDO, should be the first choice for all PHP developers.From the &lt;a href="http://us.php.net/manual/en/intro.pdo.php" target="_blank"&gt;PDO manual&lt;/a&gt;: &lt;em&gt;PDO provides a data-access abstraction layer, which means that, regardless of which database you're using, you use the same functions to issue queries and fetch data&lt;/em&gt;. You get a few super nice benefits: PDO manages transactions (however the underlying RDBMS must support transactions) and using prepared statements gives two benefits: better performance on queries that need to be executed multiple times with the same or different parameters and implicit guarding against SQL injection.&lt;/p&gt;  &lt;p&gt;Microsoft recently released an update to the SQL Server PHP driver that includes support for PDO. You can download it &lt;a href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=80e44913-24b4-4113-8807-caae6cf2ca05" target="_blank"&gt;here&lt;/a&gt;. Ignore the SQL Server information on the &lt;a href="http://us.php.net/manual/en/intro.mssql.php" target="_blank"&gt;PHP site&lt;/a&gt;, it’s outdated and for whatever reason The PHP Group is reluctant or dragging their feet to get it updated. Makes no sense to me why they wouldn’t want to have a pointer to the latest and greatest. &lt;/p&gt;  &lt;p&gt;While I’d like to see all PHP developers use SQL Server I’d much rather see them leverage PDO so that when they finally do see the light and want to try out Express or SQL Azure it’s a much simpler exercise. Your application is far more valuable if you can easily satisfy a client’s requirement to use a particular backend. &lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10100861" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="PHP" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/PHP/" /><category term="PDO" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/PDO/" /></entry><entry><title>Database Schema Help</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/11/21/database-schema-help.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/11/21/database-schema-help.aspx</id><published>2010-11-22T01:14:58Z</published><updated>2010-11-22T01:14:58Z</updated><content type="html">&lt;p&gt;I’m testing out some new stuff and I need your help.Do you have a schema that has a bunch of complex dependencies between objects such that it’s a real pain when you need to alter it – you have to figure out the dependencies, unhook them, make your change, and then wire everything back together? I so can you send me your schema and some of the painful changes you had to make? Using the &lt;a href="http://blogs.msdn.com/b/dtjones/contact.aspx" target="_blank"&gt;Email Blog Author&lt;/a&gt; link send me the CREATE script for the starting schema along with the alters were a pain. I don’t have anything to offer you for your assistance other than the satisfaction that you helped out the SQL Server team. Thanks in advance!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10094492" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /></entry><entry><title>SQL PASS Summit Focus Groups</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/11/02/sql-pass-summit-focus-groups.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/11/02/sql-pass-summit-focus-groups.aspx</id><published>2010-11-02T10:43:05Z</published><updated>2010-11-02T10:43:05Z</updated><content type="html">&lt;p&gt;This year during the PASS Summit we (Microsoft) will be conducting a bunch of focus groups. This is a great opportunity to meet face-to-face with folks from the SQL Server team and impart your knowledge on them. You can find a list of Focus Groups &lt;a href="http://www.sqlpass.org/summit/na2010/Agenda/Microsoft/FocusGroups.aspx" target="_blank"&gt;here&lt;/a&gt; along with a description of each and instructions for &lt;em&gt;registering&lt;/em&gt;.&lt;/p&gt;  &lt;p&gt;All focus groups will be held at the Washington State Convention and Trade Center during the hours of the conference.&lt;/p&gt;  &lt;p&gt;This year I’m moderating a focus group called &lt;em&gt;Technology Trends &amp;amp; the DBA&lt;/em&gt;. The description of the session is:&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;This moderated session will explore the current state of deploying and managing SQL Server within the Enterprise and discuss how trends like commodity hardware, virtualization, cloud computing (public &amp;amp; private), and compliance &amp;amp; auditing requirements are changing the way IT uses technology to bring business value and how these change the role of the DBA.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;You guys are the rock stars of the database industry and I want to learn how your job is changing and what we in the product group can do to address these changes. It’s also a chance for you to network with others and hear how technology is changing their environment.&lt;/p&gt;  &lt;p&gt;If you’re interested in attending my focus group please email &lt;a href="mailto://mstemps@microsoft.com" target="_blank"&gt;Mark Stempski&lt;/a&gt;. We have two time slots: &lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;Wednesday (11/10) from 11:30-1:00pm &lt;/li&gt;    &lt;li&gt;Thursday (11/11) from 1:00-2:30pm &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;font color="#ff0000"&gt;&lt;strong&gt;Space is limited so sign-up today!&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10084656" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="PASS Summit 2010" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/PASS+Summit+2010/" /></entry><entry><title>Project “Houston” Grows up to become Database manager for SQL Azure</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/10/31/project-houston-grows-up-to-become-database-manager-for-sql-azure.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/10/31/project-houston-grows-up-to-become-database-manager-for-sql-azure.aspx</id><published>2010-10-31T17:25:44Z</published><updated>2010-10-31T17:25:44Z</updated><content type="html">&lt;p&gt;I’ve blogged before on Project “Houston” (&lt;a href="http://blogs.msdn.com/b/dtjones/archive/2010/06/12/sql-server-project-houston-amp-sql-azure.aspx" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://blogs.msdn.com/b/dtjones/archive/2010/08/01/houston-we-don-t-have-a-problem.aspx" target="_blank"&gt;here&lt;/a&gt;). at PDC this past week we announced that as part of the Developer Portal refresh Project “Houston” will be known as “Database manager for SQL Azure”. Database manager is a Silverlight client (running in the browser) for schema design and editing, entering data in to tables, and querying the database. &lt;/p&gt;  &lt;p&gt;There are other announcements for SQL Azure: SQL Azure Reporting CTP and SQL Azure Data Sync CTP2. You can read more about Database manager and these additional features &lt;a href="http://blogs.msdn.com/b/sqlazure/archive/2010/10/28/10081543.aspx" target="_blank"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10083709" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Azure" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Azure/" /><category term="Project Houston" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Project+Houston/" /></entry><entry><title>SQL Server MVPs–Thank you for what you do!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/10/16/sql-server-mvps-thank-you-for-what-you-do.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/10/16/sql-server-mvps-thank-you-for-what-you-do.aspx</id><published>2010-10-17T01:28:00Z</published><updated>2010-10-17T01:28:00Z</updated><content type="html">&lt;p&gt;&lt;font size="2"&gt;I follow the blog and/or Twitter of many of the SQL Server MVPs and to be blunt this is a truly amazing group of professionals. Their passion for SQL Server is undeniable. Their desire to expand their already deep knowledge of the product is unsurpassed. And their unselfish generosity to share their knowledge with others is inspiring. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;The amount of time they spend preparing for events, traveling to events and @ events is surpassed by few. I wish I could name names but since I don’t follow all MVPs it just isn’t fair to single some of them out. I think the ones that I would name here know who they are. And yes, BrentO I would name you! And yes Buck Woody, if you weren’t an MS employee, I would name you too! I didn’t say that MVPs don’t have an ego!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;Being on the product side of the equation I often get to see a different side of the MVPs. The side I get to see is still passionate about the product but it possess another element, one that some MVPs verbalize publically but many save it for the product group. That side is honest and critical of the product. I relish this as I always know I’m getting the real deal from them.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;For the benefit of the product and the community the critical side is equally as important as the unselfish evangelism.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;If you’re an MVP I whole heartedly salute you and all that you do. If you’re not an MVP and you’re passionate about the product and the community I challenge you to become one. Becoming an MVP is not formulaic. If you want to learn more about what it means to be an MVP and some inside tips for how to become one take a look at the following resources on SQL Server Central:&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.sqlservercentral.com/articles/Editorial/70426/" href="http://www.sqlservercentral.com/articles/Editorial/70426/"&gt;http://www.sqlservercentral.com/articles/Editorial/70426/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.sqlservercentral.com/blogs/andy_warren/archive/2008/7/13/what-is-an-mvp.aspx" href="http://www.sqlservercentral.com/blogs/andy_warren/archive/2008/7/13/what-is-an-mvp.aspx"&gt;http://www.sqlservercentral.com/blogs/andy_warren/archive/2008/7/13/what-is-an-mvp.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.sqlservercentral.com/articles/Editorial/63587/" href="http://www.sqlservercentral.com/articles/Editorial/63587/"&gt;http://www.sqlservercentral.com/articles/Editorial/63587/&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.sqlservercentral.com/Forums/Topic530463-263-1.aspx" href="http://www.sqlservercentral.com/Forums/Topic530463-263-1.aspx"&gt;http://www.sqlservercentral.com/Forums/Topic530463-263-1.aspx&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;From my perspective (take it at face value) if you’re passionate about SQL Server, if present at as many conferences as you possibly can (I know this is tough with work and family), participate in the community (User Groups, Blogs, Twitter, Forums, etc) you will get yourself noticed and that’s essential. Through this you demonstrate your knowledge and passion for the product. Through this you will attract attention. And through this you may find yourself nominated to be a SQL Server MVP. I truly hope some day to see your name on the nomination list. &lt;/p&gt;  &lt;p&gt;I have a high degree of respect for all SQL Server professionals. I have a special place in my heart for SQL Server MVPs. And to the SQL Server MVPs I say thank you!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10076910" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server/" /><category term="MVPs" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/MVPs/" /></entry><entry><title>Central Management Servers =&gt; Shared Connection Favorites</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/10/14/central-management-servers-gt-shared-connection-favorites.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/10/14/central-management-servers-gt-shared-connection-favorites.aspx</id><published>2010-10-14T14:34:21Z</published><updated>2010-10-14T14:34:21Z</updated><content type="html">&lt;p&gt;&lt;font size="2"&gt;Back in SQL Server 2008 my team implemented the Central Management Server (CMS) feature. If you work as part of a DBA team and you haven’t tried it out I encourage you to do so. It’s available on all editions, even Express. In short, the CMS allows you to share entries in registered servers with other people. This is really powerful if, as I mentioned, you work in a team environment or you use multiple machines.&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;I recently configured a set of VM environments, one for each major version of SQL Server going back to SQL Server 2000. I use a desktop machine and a laptop, in addition to the machine running all of the VMs. I started setting up Registered Servers, albeit local registrations with connection short cuts to each of the instances. Then it dawned on me: &lt;/font&gt;&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;&lt;font color="#0000ff" size="2"&gt;“You dork what why are you entering this connection information multiple times? Why not designate one of the instances as a CMS and store them once?”&lt;/font&gt;&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;font size="2"&gt;I felt like a complete idiot. Here my team implemented the feature and I completely forgot about it. So I stopped with the madness, picked an instance to use as my CMS, or as I like to call it my SSMS Shared Connection Favorites, and registered all of the instances there. Now in each SSMS I use I simply add the instance storing the Shared Favorites in Registered Servers and Voilà, register each instance once and use in multiple locations!&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;I did run in to a limitation of the CMS, which made me very unhappy but I have no one to blame but myself. I wanted to register my SQL Azure instance with the CMS. But SQL Azure only supports SQL Authentication and the CMS only supports Windows Authentication. Argh! There are a number of reasons why we imposed the CMS limitation, I won’t go into them here, but right now I’m not happy about it. I’ll have to see what I can do about that…&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font size="2"&gt;You can read more about Central Management Servers in &lt;a href="http://msdn.microsoft.com/en-us/library/bb895144.aspx"&gt;BOL&lt;/a&gt;. Kimberly Tripp also has a good &lt;a href="http://www.sqlskills.com/BLOGS/KIMBERLY/post/SQL-Server-2008-Central-Management-Servers-have-you-seen-these.aspx"&gt;blog post&lt;/a&gt; on CMS.&lt;/font&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10075893" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="SQL Server 2008" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008/" /><category term="Management Studio" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Management+Studio/" /><category term="SQL Server 2008 R2" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Server+2008+R2/" /><category term="Central Management Server" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Central+Management+Server/" /></entry><entry><title>Moving Databases Between SQL Azure Servers</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/b/dtjones/archive/2010/10/09/moving-databases-between-sql-azure-servers.aspx" /><id>http://blogs.msdn.com/b/dtjones/archive/2010/10/09/moving-databases-between-sql-azure-servers.aspx</id><published>2010-10-09T16:19:00Z</published><updated>2010-10-09T16:19:00Z</updated><content type="html">&lt;p&gt;This week I had to move a couple of databases between two SQL Azure accounts. I needed to decommission one account and thus get the important stuff out before nuking it. My goal was straight forward: move two databases from one SQL Azure server (and account) to another SQL Azure server (and account). The applications have a fairly high tolerance for downtime which meant I didn&amp;rsquo;t have to concern myself with maintaining continuity.&lt;/p&gt;
&lt;p&gt;For the schema I had two options to chose from: script the entire database (using Management Studio) or extract the database as a .dacpac. For the data I also had two options: include the data as part of the script or use the Import/Export Wizard to copy the data. As a side note, I always thought this tool was named backwards &amp;ndash; shouldn&amp;rsquo;t it be the Export/Import tool? &lt;/p&gt;
&lt;p&gt;I opted to go the .dacpac route for two simple reasons: first, I wanted to get the schema moved over first and validate it before moving the data and second, I wanted to have the schema in a portable format that wasn&amp;rsquo;t easily altered. Think of this as a way of preserving the integrity of the schema. Transact-SQL scripts are too easy to change without warning.&lt;/p&gt;
&lt;p&gt;I connected Management Studio to the server being decommissioned and from each database I created a .dacpac &amp;ndash; I did this by right-clicking the database in Object Explorer, selecting Tasks &amp;ndash;&amp;gt; Extract Data-tier Application&amp;hellip; I followed the prompts in the wizard, accepting all of the defaults. Neither of my schema are very complex so the process was extremely fast for both.&lt;/p&gt;
&lt;p&gt;Once I had the two .dacpacs on my local machine I connected Management Studio to the new server. I expanded the Management node, right-clicked on Data-tier Applications and selected Deploy Data-tier Application. This launched the deployment wizard. I followed the wizard, accepting the defaults. I repeated this for the second database. &lt;/p&gt;
&lt;p&gt;Now that I had the schema moved over, and since I used the Data-tier Application functionality I had confidence everything moved correctly &amp;ndash; because I didn&amp;rsquo;t receive any errors! It&amp;rsquo;s time to move the data.&lt;/p&gt;
&lt;p&gt;I opted to use the Import/Export wizard for this. It was a simple and straight forward. I launched the wizard, pointed to the original database, pointed to the new database, selected my tables and let &amp;lsquo;er rip! It was fast (neither database is very big) and painless. One thing to keep in mind when doing this is it&amp;rsquo;s not performing a server to server copy; it brings the data locally and then pushes it back up to the cloud. &lt;/p&gt;
&lt;p&gt;The final step was to re-enable the logins. For security reasons passwords are not stored in the .dacpac. When SQL logins are created during deployment, each SQL login is created as a disabled login with a strong random password and the MUST_CHANGE clause. Thereafter, users must enable and change the password for each new SQL login (using the ALTER LOGIN command, for example). I quick little Transact-SQL and my logins are back in business.&lt;/p&gt;
&lt;p&gt;The entire process took me about 15 minutes to complete (remember my databases are relatively small) &amp;ndash; it was awesome!&lt;/p&gt;
&lt;p&gt;Every time I use SQL Azure I walk away with a smile on my face. It&amp;rsquo;s extremely cool that I have all this capability at my finger tips and I don&amp;rsquo;t have to worry about managing a service, applying patches, etc.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;&lt;span style="color: #008000;"&gt;10/13/2010: Correction: There is a systematic way to move databases between servers. This&lt;/span&gt; &lt;a title="blog post" href="http://blogs.msdn.com/b/sqlazure/archive/2010/08/25/10054109.aspx"&gt;blog post&lt;/a&gt; &lt;span style="color: #008000;"&gt;explains how to create a new database as a copy of another database.&lt;br /&gt;&lt;br /&gt;The Transact-SQL is as follows:&lt;br /&gt;&lt;span style="font-family: courier new,courier;"&gt;CREATE DATABASE destination_database_name&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; AS COPY OF [source_server_name.]source_database_name&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Keep in mind that your username and password must be the same on the target and source server and you must have &lt;span style="font-family: courier new,courier;"&gt;CREATE DATABASE&lt;/span&gt; permissions on the target server and you must have permissions to the database on the source server. Since the DAC registration meta-data resides in MASTER it won't be copied over. After the database copy you can connect to the new database and register it as a Data-tier Application.&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=10073639" width="1" height="1"&gt;</content><author><name>Dan Jones MSFT</name><uri>http://blogs.msdn.com/dtjones/ProfileUrlRedirect.ashx</uri></author><category term="Management Studio" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Management+Studio/" /><category term="Data-tier Application Component" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/Data_2D00_tier+Application+Component/" /><category term="SQL Azure" scheme="http://blogs.msdn.com/b/dtjones/archive/tags/SQL+Azure/" /></entry></feed>