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

<channel>
	<title>Admins Goodies &#187; sql-server-2008</title>
	<atom:link href="http://adminsgoodies.com/tag/sql-server-2008/feed/" rel="self" type="application/rss+xml" />
	<link>http://adminsgoodies.com</link>
	<description>Just another WordPress site</description>
	<lastBuildDate>Fri, 24 May 2013 16:33:10 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>What hosted server configuration do I need to consider for a medium-performance web-application?</title>
		<link>http://adminsgoodies.com/what-hosted-server-configuration-do-i-need-to-consider-for-a-medium-performance-web-application-2/</link>
		<comments>http://adminsgoodies.com/what-hosted-server-configuration-do-i-need-to-consider-for-a-medium-performance-web-application-2/#comments</comments>
		<pubDate>Sun, 13 Jan 2013 17:33:26 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[hosting]]></category>
		<category><![CDATA[sql-server-2008]]></category>
		<category><![CDATA[web-hosting]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/what-hosted-server-configuration-do-i-need-to-consider-for-a-medium-performance-web-application-2/</guid>
		<description><![CDATA[I have a Microsoft ASP.NET MVC web application with SQL Server 2008. Currently running on a single server, performance is reasonable. However I now need to deploy the same application to support much higher volumes. There are also a number of high-load services (for real-time route scheduling and processing of data feeds). I believe that I will need a separate database server and one or two web-servers. If I host at somewhere like 1&#38;1 or [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I have a Microsoft ASP.NET MVC web application with SQL Server 2008. Currently running on a single server, performance is reasonable. However I now need to deploy the same application to support much higher volumes. There are also a number of high-load services (for real-time route scheduling and processing of data feeds).</p>
<p>I believe that I will need a separate database server and one or two web-servers. </p>
<p>If I host at somewhere like 1&amp;1 or Rackspace I presume they will advise. However I would like some idea before I start any discussions.</p>
<p>One area I&#8217;m not sure about is the windows server versions I should be using, CPU/memory requirements, whether these hosting providers offer load-balancing and kinds of costs involved.</p>
<p>EDITED:</p>
<p>I agree this is quite vague still. Perhaps I should post a question regarding the techniques for estimating server requirements? I&#8217;ll search some previous posts.</p>
<div class="author">Asked by <a href="http://serverfault.com/users/87852/mark-chidlow" target="_blank">Mark Chidlow</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<blockquote>
<p>However I now need to deploy the same application to support much higher volumes &#8211; 10,000 basic<br />
  orders per week</p>
</blockquote>
<p>Bad programmer? 10.000 oders per week are not a lot. assuming they come in 5 days and 8 hours (not all week long) that is still only 0.069 orders per second, or 4 orders per minute. Assuming a 3 times peak this still is just 12 orders per minute.</p>
<p>You need multiple servers for one order every 5 seconds? <img src='http://adminsgoodies.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' />  Maybe you did not use any index on your database?</p>
<p>A small virtual server should be good enough.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/37059/tomtom" target="_blank">TomTom</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/290949/what-hosted-server-configuration-do-i-need-to-consider-for-a-medium-performance" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/what-hosted-server-configuration-do-i-need-to-consider-for-a-medium-performance-web-application-2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Best practice for setting up SQL server on a Virtual Machine [closed]</title>
		<link>http://adminsgoodies.com/best-practice-for-setting-up-sql-server-on-a-virtual-machine-closed/</link>
		<comments>http://adminsgoodies.com/best-practice-for-setting-up-sql-server-on-a-virtual-machine-closed/#comments</comments>
		<pubDate>Mon, 10 Dec 2012 17:36:24 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[sql-server-2008]]></category>
		<category><![CDATA[windows]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/best-practice-for-setting-up-sql-server-on-a-virtual-machine-closed/</guid>
		<description><![CDATA[This is my first attempt at virtualizing SQL server on VMWare and I want to make sure I am doing things correctly. Should I have SQL server installed on the C: drive / same partition as the OS, Then add a virtual disk for the Data files, say 300GB, and then another virtual disk for the log files say 100GB? Or should I add 2 300GB vdisks, for the data files mirror them in the [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>This is my first attempt at virtualizing SQL server on VMWare and I want to make sure I am doing things correctly.</p>
<p>Should I have SQL server installed on the C: drive / same partition as the OS,<br />
Then add a virtual disk for the Data files, say 300GB, and then another virtual disk for the log files say 100GB?</p>
<p>Or should I add 2 300GB vdisks, for the data files mirror them in the operating system, and then add a non mirrored vdisk of 100GB for LogFiles??</p>
<div class="author">Asked by <a href="http://serverfault.com/users/148961/crazycoderz" target="_blank">CrazyCoderz</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>If the virtual disks are all on the same underlying spindles, then it doesn&#8217;t really matter. If they&#8217;re on different sets of spindles and your use case will benefit from the extra IO, then do that. It&#8217;s really up to you to profile your usage and determine whether or not you would benefit from this. </p>
<p>That said, if they&#8217;re all on the same spindles now, but you plan to grow to separate sets later on, separate virtual disks now will make that migration easier down the road. </p>
<p>At no point in this process does it make sense to introduce Windows software RAID unless you have no other RAID factoring in anywhere.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/10472/mdmarra" target="_blank">MDMarra</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/456617/best-practice-for-setting-up-sql-server-on-a-virtual-machine" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/best-practice-for-setting-up-sql-server-on-a-virtual-machine-closed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Set password for SQL Server 2008 R2 Account</title>
		<link>http://adminsgoodies.com/set-password-for-sql-server-2008-r2-account/</link>
		<comments>http://adminsgoodies.com/set-password-for-sql-server-2008-r2-account/#comments</comments>
		<pubDate>Wed, 28 Nov 2012 17:36:16 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[sql-server]]></category>
		<category><![CDATA[sql-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/set-password-for-sql-server-2008-r2-account/</guid>
		<description><![CDATA[I have just been given access to a new Windows Web Server 2008 R2 which has SQL Server 2008 R2 installed on it. When I open up SQL Server Management Studio and try to connect, it does so with Windows Authentication, however, it does not ask me for a password, and it successfully connects. I am worried that (hopefully not) someone who shouldn&#8217;t be accessing the server does so, and can then easily connect to [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I have just been given access to a new Windows Web Server 2008 R2 which has SQL Server 2008 R2 installed on it. When I open up SQL Server Management Studio and try to connect, it does so with Windows Authentication, however, it does not ask me for a password, and it successfully connects.</p>
<p>I am worried that (hopefully not) someone who shouldn&#8217;t be accessing the server does so, and can then easily connect to SQL Server Management Studio without even being asked for a password, and then have access to the databases. For example, someone who has stolen the Windows Web Server login details. They now are logged onto the Web Server, and because the login details they used identify that user the privileges to access SQL Server with Windows Authentication (no password needed), they can then access the databases and data.</p>
<p>What would be the best approach here to ensure that anyone who wants access to my databases, must enter a password?</p>
<p>I know I can create user accounts inside SQL Server and assign users to specific databases (SQL Server Authentication), but this doesn&#8217;t get around the issue of a user who shouldn&#8217;t be on the server, just selecting Windows Authentication type, enter no password, and have full access to my databases.</p>
<p>Can someone please advice this on this?</p>
<p>Thanks folks.</p>
<div class="author">Asked by <a href="http://serverfault.com/users/133353/tgriffiths" target="_blank">tgriffiths</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>If you&#8217;re worried about securing the database against a malicious user that gains access to the box, there&#8217;s not a lot you can do. If a Windows login on your server is compromised, they can just as easily put the database in single user mode and get at anything in it without needing valid credentials. This is why you&#8217;ll typically see scenerios where the web tier is in the DMZ and the database tier is on the trusted side of the firewall with only specific ports open between the two.</p>
<p>Worry about keeping your box patched and well-secured, don&#8217;t worry that if someone hacks your box and has privileged credentials, that they might be able to see your database. If they&#8217;re already at that point, they have everything they need already.</p>
<blockquote>
<p>Just selecting Windows Authentication type, enter no password, and have full access to my databases.</p>
</blockquote>
<p>I think you might be misunderstanding how this works. It doesn&#8217;t grant <strong>any</strong> Windows user the ability to access the databases, only ones that you&#8217;ve specifically allowed. Unless a user has been granted a logon to the SQL Server instance, a Windows user can&#8217;t just get it. I&#8217;m assuming that you can because your user account has been granted access.</p>
<p>If want to see all of the logins (users, groups, and SQL logins) that have access, you can run <code>select loginname from master.dbo.syslogins</code>. You can check this list against who should be allowed access to verify that you haven&#8217;t accidentally given rights where they aren&#8217;t needed.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/10472/mdmarra" target="_blank">MDMarra</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/453022/set-password-for-sql-server-2008-r2-account" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/set-password-for-sql-server-2008-r2-account/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Deploy an ASP.NET Web API- and Browser-based Application to a Production Environment [closed]</title>
		<link>http://adminsgoodies.com/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production-environment-closed/</link>
		<comments>http://adminsgoodies.com/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production-environment-closed/#comments</comments>
		<pubDate>Tue, 13 Nov 2012 17:35:37 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[asp.net-mvc]]></category>
		<category><![CDATA[iis]]></category>
		<category><![CDATA[sql-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production-environment-closed/</guid>
		<description><![CDATA[Possible Duplicate: How to Deploy an ASP.NET Web API- and Browser-based Application to a Production Environment We have an ASP.NET Web API server that serves up a SQL Server data driven website. The API uses JSON to transfer data from SQL Server to the front end. We need to move it to an internal production environment (nothing will be exposed on the public Internet) and we’re having problems &#8211; or just not understanding what needs [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<blockquote>
<p><strong>Possible Duplicate:</strong><br />
  <a href="http://serverfault.com/questions/448006/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production">How to Deploy an ASP.NET Web API- and Browser-based Application to a Production Environment</a>  </p>
</blockquote>
<p>We have an ASP.NET Web API server that serves up a SQL Server data driven website. The API uses JSON to transfer data from SQL Server to the front end.  </p>
<p>We need to move it to an internal production environment (nothing will be exposed on the public Internet) and we’re having problems &#8211; or just not understanding what needs to be done.</p>
<p>There are two domains:</p>
<ol>
<li>The corporate domain &#8211; where all users login normally.  </li>
<li>The process domain &#8211; contains the database the Web API needs to access.</li>
</ol>
<p>The IT staff wants to put a DMZ between the two domains to house the IIS app and shield the users on the corporate domain from having access into the process domain directly.  </p>
<p>The ideal configuration is:</p>
<pre><code>corp domain (end users) &lt;–&gt; firewall (open port 80) &lt;–&gt; DMZ (web server running IIS) &lt;–&gt; firewall (open port 80 or 1433????) &lt;–&gt; process domain (IIS for Web API and SQL Server)
</code></pre>
<p>We don’t really understand how to deploy our browser/Web API application in this scenario.</p>
<ol>
<li>Do we need to break up our application so that all the client code  is on the IIS server in the DMZ, while the Web API gets installed on the server in the process domain?</li>
<li>Does the entire app (client code and Web API) stay together on the IIS server in the DMZ, which then somehow accesses the SQL Server instance to get data?</li>
<li>From the IIS server and app in the DMZ, would you simply access the Web API on the server in the process domain by going to <code>http://server/appname/api/getitmes</code>?</li>
<li>In the second firewall between the DMZ and the process domain, would you have to open port 1433 or just port 80 since the Web API is a HTTP endpoint?</li>
<li>Or, is there some better way of deployment (i.e., how ASP.NET Web API single page applications written all in HTML5 and JavaScript supposed to be deployed to production environments?)?</li>
</ol>
<blockquote>
<p>NB: The servers are Win2k8 R2, SQL Server 2k8 R2, and IIS 7.5.</p>
</blockquote>
<div class="author">Asked by <a href="http://serverfault.com/users/69508/lmttag" target="_blank">lmttag</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>Typically speaking your code is going to be deployed on the IIS server.  This means your &#8220;web api&#8221; and website.  </p>
<p>Quite frankly I don&#8217;t think your using the correct terms here as what you seem to be saying is that you have a web site which communicates with a web service that then communicates with the sql server for data access.</p>
<p>The web service and website would be on one or more web servers outside the DMZ.  The database server would be inside the DMZ.  The DMZ should be configured to only allow requests from your web server(s) to go to the database server.  Usually over port 1433 or whatever port SQL is configured to use.</p>
<p>Outside the DMZ, a firewall should be in place to limit access to that web server on ports 80 or 443.  80 if it&#8217;s not SSL, 443 if SSL is enabled.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/3550/chris-lively" target="_blank">Chris Lively</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/448258/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/how-to-deploy-an-asp-net-web-api-and-browser-based-application-to-a-production-environment-closed/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PerfMon counters have different Page File % Usage values for _Total and C:\pagefile.sys for SQL Server on VM</title>
		<link>http://adminsgoodies.com/perfmon-counters-have-different-page-file-usage-values-for-_total-and-cpagefile-sys-for-sql-server-on-vm/</link>
		<comments>http://adminsgoodies.com/perfmon-counters-have-different-page-file-usage-values-for-_total-and-cpagefile-sys-for-sql-server-on-vm/#comments</comments>
		<pubDate>Wed, 03 Oct 2012 16:33:47 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[perfmon]]></category>
		<category><![CDATA[sql-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/perfmon-counters-have-different-page-file-usage-values-for-_total-and-cpagefile-sys-for-sql-server-on-vm/</guid>
		<description><![CDATA[I am collecting PerfMon counters on a SQL Server 2008 server (which is hosted on a VM), and I am getting different Page File % Usage values for _Total and C:\pagefile.sys. The C:\pagefile.sys values are consistently at zero, and the _Total values are consistently around 26. Other counters (Memory Grants Pending, Page Life Expectancy, Processor Queue Length, Available MBytes) all are showing values indicative of memory and cpu pressure, so I would think that there [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I am collecting PerfMon counters on a SQL Server 2008 server (which is hosted on a VM), and I am getting different Page File % Usage values for _Total and C:\pagefile.sys.  The C:\pagefile.sys values are consistently at zero, and the _Total values are consistently around 26.  Other counters (Memory Grants Pending, Page Life Expectancy, Processor Queue Length, Available MBytes) all are showing values indicative of memory and cpu pressure, so I would think that there would be some indication of paging to disk (which the _Total pagefile usage value agrees with but the C:\pagefile.sys instance value does not).  </p>
<p>Would anyone have insight into how I should evaluate these two Pagefile % Usage values to determine the actual pagefile usage on the server?  Does the fact that the Server is a Virtual Machine have anything to do with why there are two values?  </p>
<div class="author">Asked by <a href="http://serverfault.com/users/139490/caljerm" target="_blank">caljerm</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<blockquote>
<p>Would anyone have insight into how I should evaluate these two Pagefile % Usage values to determine the actual pagefile usage on the server?</p>
</blockquote>
<p>There are a few things that can be happening here, I&#8217;ll list them in order of likelihood:</p>
<ol>
<li>
<p>You don&#8217;t have a pagefile at C:\pagefile.sys. It&#8217;s incredibly rare for there to be absolutely zero usage. You can check the location of your pagefile(s) by running <code>wmic pagefile /format</code> from an elevated command prompt.</p>
</li>
<li>
<p>You have more than one pagefile and the one on c:\ just isn&#8217;t getting any use. Still pretty uncommon but possible. Run the command above to verify.</p>
</li>
<li>
<p>You&#8217;re reading the Perfmon graph incorrectly. Pretty unlikely, since it&#8217;s straight forward, but worth mentioning since you didn&#8217;t post a screenshot of it.</p>
</li>
</ol>
<blockquote>
<p>Does the fact that the Server is a Virtual Machine have anything to do with why there are two values?</p>
</blockquote>
<p>No.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/10472/mdmarra" target="_blank">MDMarra</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/434136/perfmon-counters-have-different-page-file-usage-values-for-total-and-c-pagef" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/perfmon-counters-have-different-page-file-usage-values-for-_total-and-cpagefile-sys-for-sql-server-on-vm/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ram recommendations vs SQL DB size</title>
		<link>http://adminsgoodies.com/ram-recommendations-vs-sql-db-size/</link>
		<comments>http://adminsgoodies.com/ram-recommendations-vs-sql-db-size/#comments</comments>
		<pubDate>Fri, 14 Sep 2012 16:33:17 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[ram]]></category>
		<category><![CDATA[server-setup]]></category>
		<category><![CDATA[sql-server-2008]]></category>
		<category><![CDATA[windows-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/ram-recommendations-vs-sql-db-size/</guid>
		<description><![CDATA[we have a medium sized SQL db of around 40GB, and are about to move it to a new box with server 2008 r2 x64 some expensive contractor blokey has just come in and said we need 72gb of ram so that the whole DB can live in RAM i guess.. , I find that ludicrous, but maybe its me being a wally.. wonder if there is a &#8216;rule of thumb calculation&#8217; that hints at [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>we have a medium sized SQL db of around 40GB, and are about to move it to a new box with server 2008 r2 x64</p>
<p>some expensive contractor blokey has just come in and said we need 72gb of ram so that the whole DB can live in RAM i guess.. , I find that ludicrous, but maybe its me being a wally..</p>
<p>wonder if there is a &#8216;rule of thumb calculation&#8217; that hints at a good amount of ram to use on a SQL instance..</p>
<p><strong>EDIT:</strong><br />
DB has up to 150 people hitting it at any one time, used to run a booking system. very nasty old DB schema, hideous amounts of columns in alot of the tables, vast arrays of semi pointless indexes.<br />
accessed by .net hitting some sprocs, but also chucking raw sql, and whatever VisualDataFlex uses.</p>
<p>thanks</p>
<p>nat</p>
<div class="author">Asked by <a href="http://serverfault.com/users/97158/nat" target="_blank">nat</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>There is no good rule of thumb. </p>
<p>The usefulness additional RAM depends very much on how your database is designed and the query patterns or your users. As an extreme example, if you have 1 TB of data in total, good indexing and 1000 simultaneous users that only ever go after 1 particular row (select * from dbo.BigTable where pkey_id = 42), you could get by with very little RAM. The impact of more RAM can also depend on how fast your disk storage subsystem is. If you have super fast storage (a <em>good</em> SAN, <em>good</em> DASD or SSD) you may not notice lag when the server needs to read data.</p>
<p>Ideally, you want all of the data that the database is <em>likely to need</em> during the day cached in RAM. This is sometimes referred to as &#8220;hot data&#8221; or &#8220;hot pages&#8221; (In SQL Server,  data is organized in units called &#8220;pages&#8221;). An example of hot data might be orders taken today or yesterday, that will be needed by workers shipping those orders. An example of cold data might be orders taken two years ago, but that still exist in the system so that CSRs can look up old orders.</p>
<p>With a well-designed OLTP system with 40 GB of data in total (as opposed to data files that add up to 40 GB), it might be possible that the hot data only comes to 10 GB, 5 GB, 1 GB or even less. In olden days, the difference between only buying 64 GB of RAM and 8 GB (or even less) was astronomical and getting the amount of RAM to be purchased right was worth spending a lot of time on.</p>
<p>You always want a little extra RAM for &#8220;overhead&#8221; like the OS, virus scanners, RDP sessions. You also want to take database growth into account.</p>
<p>Another thing to keep in mind is that RAM comes in &#8220;chunks&#8221;. You can&#8217;t decide between 48 GB and 49 GB, you have to step up, probably from 48 to 64 GB. The size of the chunk depends on the RAM technologies currently being marketed and how many channels your memory has. Old servers had one change to memory, then servers started having two and now most beefy servers have three memory channels. So, you can&#8217;t just add one stick, you need to add two three at a time.</p>
<p>If you have a poorly designed and badly indexed database, as you say you do, SQL will wind up reading lots of data that it would not have to with a better designed database. Having that data all in RAM doesn&#8217;t mean that it doesn&#8217;t read through it all. It just means that it reads through all of the data in RAM faster than it could if the data was sitting on disk storage. That isn&#8217;t necessarily going to fix all of your problems; reading data from RAM is fast but still takes a finite time and you can still get blocking and deadlock issues which can cause performance problems.</p>
<p>Another thing is that more RAM helps when people run large reports on the system that do utilize last year&#8217;s data. People treat OLTP systems like reporting systems all the time. This may not be a rare occurrence, particularly with haphazard SQL queries.</p>
<p>You could spend time (and money) on developers and testers to improve the database design and make whatever changes to the front end that this would require. </p>
<p>A very quick trip to hp.com shows that I can get a (very) stripped-down server with 96 GB of RAM for about $9,000 US. </p>
<p>(That&#8217;s less than $100 US per GB, without factoring out any of the other parts in the server. Parts like the power supply or the processor. Old people like me remember when RAM was $5,000 US per Mega Byte. With an M.) </p>
<p>How fast can you spend $9,000 US on development and testing time? (At corporate rates in my area, that would barely get you one whole person for one whole month.) Will that be enough time to fix everything in the database? What if a bug in the changed code slips through? </p>
<p>A server outage to add RAM might take an hour, and nearly anyone can do the work. Migrating onto a totally new server might take a couple of days of prep work and an hour of down time, and you will need someone with experience (a DBA, probably). </p>
<p>Adding RAM is unlikely to cause any bugs. Migrating to a new server is unlikely to cause any hard to find problems. (Generally, stuff either works or it is obviously broken. It&#8217;s usually &#8220;oops, wrong password&#8221; or &#8220;oops, forgot to copy a linked server&#8221;, it&#8217;s never &#8220;hey, this calculation suddenly doesn&#8217;t work correctly&#8221;.)</p>
<p>So, assuming that we are going to keep everything in RAM and we have a 40 GB database, we want some room for overhead. I&#8217;d be thinking a server with 48 GB or so. Plus, we want some room for growth. Let&#8217;s just say 25% growth from here, which is 12 GB and takes us up to 60 GB. The next level up (which I can actually buy) is 64 GB. If your consultant is recommending a triple-channel server, the next level up might be 72 GB. So, his suggestion isn&#8217;t necessarily outlandish. Maybe you don&#8217;t need as many cores/sockets, and that might drop you back down to a dual-channel server (which would be cheaper anyway) and you could buy a little bit less RAM. </p>
<p>TLDR:</p>
<p>In short, which I rarely am, RAM is cheap and time is expensive. If you don&#8217;t have the money, time or inclination to fix the database or you don&#8217;t want to risk adding bugs to your application, throwing RAM at the problem is hard to question. The other good move is to improve the responsiveness of the disk storage system (IOW, add more spindles, more RPM or go with SSD). </p>
<p>I would be asking why the consultant didn&#8217;t want you to spend a year and a $100,000 US for him to rewrite the system.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/9361/darin-strait" target="_blank">darin strait</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/427423/ram-recommendations-vs-sql-db-size" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/ram-recommendations-vs-sql-db-size/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to prevent hackers attacking SQL Server 2008 R2?</title>
		<link>http://adminsgoodies.com/how-to-prevent-hackers-attacking-sql-server-2008-r2/</link>
		<comments>http://adminsgoodies.com/how-to-prevent-hackers-attacking-sql-server-2008-r2/#comments</comments>
		<pubDate>Tue, 07 Aug 2012 16:33:25 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[sql-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/how-to-prevent-hackers-attacking-sql-server-2008-r2/</guid>
		<description><![CDATA[I checked my SQL Server 2008R2 log in Log File Viewer and found out that someone from China keeps trying to login as &#8216;SA&#8217; all the time, but failed of course. Is there anyway to prevent these hackers attacking my server? Thanks in advance. Asked by nonintanon Use firewalls &#8211; why on earth is that port (or any ports on an SQL server) open to the rest of the world? Most business have multiple network [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I checked my SQL Server 2008R2 log in Log File Viewer and found out that someone from China keeps trying to login as &#8216;SA&#8217; all the time, but failed of course.</p>
<p>Is there anyway to prevent these hackers attacking my server?</p>
<p>Thanks in advance.</p>
<p><img src="http://i.stack.imgur.com/UX1E4.png" alt="enter image description here"></p>
<div class="author">Asked by <a href="http://serverfault.com/users/131278/nonintanon" target="_blank">nonintanon</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>Use firewalls &#8211; why on earth is that port (or any ports on an SQL server) open to the rest of the world?</p>
<p>Most business have multiple network tiers;</p>
<ul>
<li>start with a firewalled/load-balanced web tier which has a firewall between it and the application tier allowing <em>just</em> the specific IPs and ports of known web servers in the web tier to talk to specific application servers in the application tier.</li>
<li>the application tier can only talk to specific IPs and ports in the web tier and can only talk to the DB server, again firewalled, by IP and port.</li>
<li>the DB tier which again is firewalled and only allowed to talk to the application tier servers by IP and port.</li>
</ul>
<p>Some (myself included) also have a secure tier behind the DB tier to handle any data that&#8217;s particularly sensitive or contractually has to be more secure.</p>
<p>This is a model used extensively and generally proves to be very safe. The idea of exposing your SQL management port outside literally made my spine shiver, please stop this or you WILL be back looking for <a href="http://serverfault.com/a/218011/1435">THIS</a>.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/1435/chopper3" target="_blank">Chopper3</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/415139/how-to-prevent-hackers-attacking-sql-server-2008-r2" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/how-to-prevent-hackers-attacking-sql-server-2008-r2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Database Server Can&#8217;t Find 300GB</title>
		<link>http://adminsgoodies.com/database-server-cant-find-300gb/</link>
		<comments>http://adminsgoodies.com/database-server-cant-find-300gb/#comments</comments>
		<pubDate>Mon, 30 Jul 2012 16:33:29 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[hard-drive]]></category>
		<category><![CDATA[sql-server-2008]]></category>
		<category><![CDATA[windows-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/database-server-cant-find-300gb/</guid>
		<description><![CDATA[I have a Windows Server 2008 R2 running Microsoft SQL Server 2008 R2. I have some how lost 300 GB of disk space, and I can&#8217;t seem to find it anywhere. The Hard Drive is 500GB and I can only account for 200GB. I have &#8220;Show Hidden Files&#8221; on and &#8220;Hide Protected Files&#8221; off. I have check the details for every folder top level folder, and I still can only find 200 GB of a [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I have a Windows Server 2008 R2 running Microsoft SQL Server 2008 R2.  I have some how lost 300 GB of disk space, and I can&#8217;t seem to find it anywhere.  The Hard Drive is 500GB and I can only account for 200GB.  I have &#8220;Show Hidden Files&#8221; on and &#8220;Hide Protected Files&#8221; off.  I have check the details for every folder top level folder, and I still can only find 200 GB of a 500 GB Hard Disk.  The disk is almost full and this doesn&#8217;t make any sense.  Any one have any ideas of where I might be able to find this lost space?  On a weekly basis I delete old back ups of the databases.  Maybe that might have something to do with it?</p>
<div class="author">Asked by <a href="http://serverfault.com/users/130296/patrick" target="_blank">Patrick</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>Use <a href="http://windirstat.info/" rel="nofollow">Windirstat</a>.  It&#8217;ll give you a graphical view of your disk space usage, as well as sort your folders by space used.  A lot easier than trying to hunt through Windows Explorer for what&#8217;s chewing up your disk space.</p>
<div class="author">Answered by <a href="http://serverfault.com/users/118258/hopelessn00b" target="_blank">HopelessN00b</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/412510/database-server-cant-find-300gb" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/database-server-cant-find-300gb/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Can an instance of amazon ec2 be upgraded automatically from sql server 2008 r2 to sql server 2012?</title>
		<link>http://adminsgoodies.com/can-an-instance-of-amazon-ec2-be-upgraded-automatically-from-sql-server-2008-r2-to-sql-server-2012/</link>
		<comments>http://adminsgoodies.com/can-an-instance-of-amazon-ec2-be-upgraded-automatically-from-sql-server-2008-r2-to-sql-server-2012/#comments</comments>
		<pubDate>Thu, 19 Jul 2012 16:33:31 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[amazon-ec2]]></category>
		<category><![CDATA[sql-server-2008]]></category>
		<category><![CDATA[sql-server-2012]]></category>
		<category><![CDATA[upgrade]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/can-an-instance-of-amazon-ec2-be-upgraded-automatically-from-sql-server-2008-r2-to-sql-server-2012/</guid>
		<description><![CDATA[Is there a tool from Amazon or Microsoft to automatically upgrade an ec2 instance&#8217;s sql server 2008 to 2012? Or do I have to create a new instance and then import all the databases? Asked by Robert Louis Murphy One of the joys of EC2 is that you can create instances so easily, for the tiny cost of a few hours of runtime. I&#8217;ve had so many system upgrades (win/mac/unix) go wrong that I would [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>Is there a tool from Amazon or Microsoft to automatically upgrade an ec2 instance&#8217;s sql server 2008 to 2012?  Or do I have to create a new instance and then import all the databases?</p>
<div class="author">Asked by <a href="http://serverfault.com/users/122289/robert-louis-murphy" target="_blank">Robert Louis Murphy</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>One of the joys of EC2 is that you can create instances so easily, for the tiny cost of a few hours of runtime. I&#8217;ve had so many system upgrades (win/mac/unix) go wrong that I would recommend doing a test run on a different instance no matter what.</p>
<p>But to answer your question, I know of no Amazon tools for updating an instance from 08 to 12. <a href="http://msdn.microsoft.com/en-us/library/ms144267.aspx" rel="nofollow">Microsoft&#8217;s website</a> contains enough <strong>Notes</strong> and <strong>Cautions</strong> that I would be careful with any tools from them as well.</p>
<p>That web page does say specifically:</p>
<blockquote>
<p>Upgrade of an earlier version of SQL Server to SQL Server 2012 is not<br />
  supported on a computer that is running Windows Server 2008 R2 Server Core SP1.</p>
</blockquote>
<div class="author">Answered by <a href="http://serverfault.com/users/128681/khoxsey" target="_blank">khoxsey</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/408522/can-an-instance-of-amazon-ec2-be-upgraded-automatically-from-sql-server-2008-r2" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/can-an-instance-of-amazon-ec2-be-upgraded-automatically-from-sql-server-2008-r2-to-sql-server-2012/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Very slow SQL Server Agent history</title>
		<link>http://adminsgoodies.com/very-slow-sql-server-agent-history/</link>
		<comments>http://adminsgoodies.com/very-slow-sql-server-agent-history/#comments</comments>
		<pubDate>Mon, 11 Jun 2012 16:33:45 +0000</pubDate>
		<dc:creator>tom</dc:creator>
				<category><![CDATA[General Questions]]></category>
		<category><![CDATA[sql-server-2008]]></category>

		<guid isPermaLink="false">http://adminsgoodies.com/very-slow-sql-server-agent-history/</guid>
		<description><![CDATA[I have a big problem with the SQL Server Agent hostory. it has become VERY VERY slow when i try to view it. If I try through Management Studio I often get a timeout and if I try viewing it with sp_help_jobhistory it is just running for a long time. I tried reducing the hostory size and the sysjobhistory table has only 8000 rows&#8230;. Is there any way to optimize this somehow? Thx a lot [...]]]></description>
				<content:encoded><![CDATA[<h3 class="pq"><img src="http://adminsgoodies.com/imgs/question.png" alt="Question" /></h3>
<p>I have a big problem with the SQL Server Agent hostory. it has become VERY VERY slow when i try to view it. If I try through Management Studio I often get a timeout and if I try viewing it with sp_help_jobhistory it is just running for a long time.</p>
<p>I tried reducing the hostory size and the sysjobhistory table has only 8000 rows&#8230;. </p>
<p>Is there any way to optimize this somehow?</p>
<p>Thx a lot<br />
Nicolaj</p>
<div class="author">Asked by <a href="http://serverfault.com/users/114675/nicolajb" target="_blank">NicolajB</a></div>
<h3 class="pa"><img src="http://adminsgoodies.com/imgs/answer.png" alt="Answer" /></h3>
<p>Ensure that the sysjobhistiory table is not fragmented. The easiest thing to do is reindex it. Since the table is so small, the reindex should happen quickly. </p>
<div class="author">Answered by <a href="http://serverfault.com/users/9361/darin-strait" target="_blank">darin strait</a></div>
<p class="ref-link">Check <a href="http://serverfault.com/questions/397497/very-slow-sql-server-agent-history" target="_blank">more discussion</a> of this question.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminsgoodies.com/very-slow-sql-server-agent-history/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
