Sql-server – Separate SQL Server Instance or just new database

deploymentsql serversql-server-2008-r2

I'm going to deploy an app whose requirement is just 'db_owner' for a database. The database itself must be created separately by the DBA.

Based on how the application will work (and its simple requirement), it should be possible to just create a new database in the default instance, since the daily writes, although quite of often (several thousand writes per day, but only tens of reads per day), but each write should be small.

However, some in my team thinks that a new instance will be better in the long run.

If someone can provide me with a guideline, pros-and-cons for each scenario, I'd be very grateful.

(Please forgive me if a similar question had been asked; the mobile StackExchange app doesn't provide a list of suggestions, unlike the website).

Best Answer

If all they need is db_owner, then I'd recommend that you do this in your existing instance.

Creating a new instance incurs the overhead of running two copies of all the SQL binaries. SQL works best when it can govern all the available resources of the server. Multiple instances are not aware of each other, and can end up fighting for available resources. There is a lot more configuration required to ensure that you avoid performance problems.

The common reasons for creating multiple instances are 1) security reasons 2) running two different versions of SQL side-by-side. You don't appear to have either of those requirements, so stick with the single instance.

My rule is one instance, unless there is a very well-proven need for a second.