SQL Server Database Settings

Posted by rbishop on Oracle Blogs See other posts from Oracle Blogs or by rbishop
Published on Mon, 1 Jul 2013 21:55:44 +0000 Indexed on 2013/07/01 23:11 UTC
Read the original article Hit count: 259

Filed under:

For those using Data Relationship Management on Oracle DB this does not apply, but for those using Microsoft SQL Server it is highly recommended that you run with Snapshot Isolation Mode. The Data Governance module will not function correctly without this mode enabled. All new Data Relationship Management repositories are created with this mode enabled by default.

This mode makes SQL Server (2005+) behave more like Oracle DB where readers simply see older versions of rows while a write is in progress, instead of readers being blocked by locks while a write takes place. Many common sources of deadlocks are eliminated. For example, if one user starts a 5 minute transaction updating half the rows in a table, without snapshot isolation everyone else reading the table will be blocked waiting. With snapshot isolation, they will see the rows as they were before the write transaction started. Conversely, if the readers had started first, the writer won't be stuck waiting for them to finish reading... the writes can begin immediately without affecting the current transactions.

To make this change, make sure no one is using the target database (eg: put it into single-user mode), then run these commands:

ALTER DATABASE [DB] SET ALLOW_SNAPSHOT_ISOLATION ON
ALTER DATABASE [DB] SET READ_COMMITTED_SNAPSHOT ON

Please make sure you coordinate with your DBA team to ensure tempdb is appropriately setup to support snapshot isolation mode, as the extra row versions are stored in tempdb until the transactions are committed.

Let me take this opportunity to extremely strongly highly recommend that you use solid state storage for your databases with appropriate iSCSI, FiberChannel, or SAN bandwidth. The performance gains are significant and there is no excuse for not using 100% solid state storage in 2013.

Actually unless you need to store petabytes of archival data, there is no excuse for using hard drives in any systems, whether laptops, desktops, application servers, or database servers. The productivity benefits alone are tremendous, not to mention power consumption, heat, etc.

© Oracle Blogs or respective owner

Related posts about /Oracle/DRM