{"id":148,"date":"2016-04-12T00:00:00","date_gmt":"2013-01-01T00:00:00","guid":{"rendered":"https:\/\/www.sqlhammer.com\/tsql2sday-77-database-mirroring"},"modified":"2026-03-18T21:52:28","modified_gmt":"2026-03-18T21:52:28","slug":"tsql2sday-77-database-mirroring","status":"publish","type":"post","link":"https:\/\/sqlhammer.com\/index.php\/2016\/04\/12\/tsql2sday-77-database-mirroring\/","title":{"rendered":"Favorite SQL Server Feature \u2013 #TSQL2SDAY #77"},"content":{"rendered":"<p><a href=\"http:\/\/www.sqlhammer.com\/policy-based-management-tsql2sday-70\/tsql2sday150x150\/\"><img decoding=\"async\" src=\"\/wp-content\/uploads\/TSQL2sDay150x150-2.jpg\" alt=\"\" \/><\/a>Today is the 77th T-SQL2SDAY!<\/p>\n<p>If you\u2019re not familiar, T-SQL Tuesday is a blogging party hosted by a different person each month. It\u2019s a creation of <a href=\"http:\/\/sqlblog.com\/blogs\/adam_machanic\/archive\/2009\/11\/30\/invitation-to-participate-in-t-sql-tuesday-001-date-time-tricks.aspx\">Adam Machanic<\/a> (<a href=\"http:\/\/sqlblog.com\/blogs\/adam_machanic\">b<\/a>|<a href=\"https:\/\/www.linkedin.com\/in\/adammachanic\">l<\/a>|<a href=\"https:\/\/twitter.com\/AdamMachanic\">t<\/a>), and it\u2019s been going on for ages now! Basically the host selects a topic, defines the rules (those are almost always the same), and then everyone else blogs about it. Once the deadline is reached,\u00a0the host\u00a0summarizes each of the submitted posts on their site\/blog.<\/p>\n<p>This month\u2019s topic is, \u201cmy favorite SQL Server feature,\u201d and is hosted by <a href=\"http:\/\/t-sql.dk\/?p=1492\">Jens Vestergaard<\/a>.<\/p>\n<h2>Database mirroring<\/h2>\n<p>I\u2019m choosing database mirroring as my favorite SQL Server feature not only because of its raw awesomeness but also because it released with SQL Server 2005 SP1. Today marks the end of SQL Server 2005\u2019s mainstream support and I felt it was fitting to send it off with a celebration of one of its best features.<\/p>\n<p>Database mirroring is so many things.<\/p>\n<ul>\n<li>High-availability feature.<\/li>\n<\/ul>\n<ul>\n<li>Flexible. It works with AD, certificates, in-domain, cross domain, etc.<\/li>\n<\/ul>\n<ul>\n<li>Tried and true. With over a decade of life the database mirroring feature is mature and stable.<\/li>\n<\/ul>\n<ul>\n<li>Setting the stage. Microsoft is throwing a lot of chips on the Availability Group feature which was inspired and based on database mirroring.<\/li>\n<\/ul>\n<ul>\n<li>Available in Standard Edition!!!<\/li>\n<\/ul>\n<ul>\n<li>FAST FAILOVERS! In <a href=\"https:\/\/mvp.microsoft.com\/en-us\/PublicProfile\/5000944?fullName=Argenis%20%20Fernandez\">Argenis Fernandez<\/a>\u2018s presentation <a href=\"https:\/\/www.google.com\/url?sa=t&#038;rct=j&#038;q=&#038;esrc=s&#038;source=web&#038;cd=6&#038;cad=rja&#038;uact=8&#038;ved=0ahUKEwju0pXIl4nMAhWKlR4KHajCCEIQFgg7MAU&#038;url=http%3A%2F%2Fwww.sqlsaturday.com%2FSessionDownload.aspx%3Fsuid%3D10471&#038;usg=AFQjCNG22I1mKwqvSGKkjjylTF_rzYVoTQ&#038;sig2=uN2Sh-wOmFoUIGOqdobswQ\">(Near) Zero-Downtime Upgrades<\/a>\u00a0he points out that mirroring fails over even faster than Availability Groups.<\/li>\n<\/ul>\n<p>With the end of SQL Server 2005, we also will soon see the end of database mirroring. There is a new feature releasing with SQL Server 2016 called Basic Availability Groups. This is the replacement for database mirroring.\u00a0The use cases and limitations will appear very similar to database mirroring but it will use the Availability Group\u00a0technology. In theory this will be\u00a0like a stim-pack for the database mirroring feature while leaving it available in Standard Edition. Let\u2019s cross our fingers that the Windows Failover Cluster components don\u2019t slow down the failovers like it did with AGs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today is the 77th T-SQL2SDAY! If you\u2019re not familiar, T-SQL Tuesday is a blogging party hosted by a different person each month. It\u2019s a creation of Adam Machanic (b|l|t), and it\u2019s been going on for ages now! Basically the host selects a topic, defines the rules (those are almost always the same), and then everyone [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":541,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,6,7,8,9,11],"tags":[],"class_list":["post-148","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administration","category-career","category-community","category-continuous-integration-deployment","category-development","category-general"],"_links":{"self":[{"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/posts\/148","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/comments?post=148"}],"version-history":[{"count":1,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/posts\/148\/revisions"}],"predecessor-version":[{"id":410,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/posts\/148\/revisions\/410"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/media\/541"}],"wp:attachment":[{"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/media?parent=148"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/categories?post=148"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sqlhammer.com\/index.php\/wp-json\/wp\/v2\/tags?post=148"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}