SQL Server Peer-to-Peer Replication – When a Conflict is Detected

Yesterday we hit the dreaded conflict in our production/DR SQL peer-to-peer replication setup.  My first reaction is usually “oh <expletive>, we’re going to need to rebuild replication”, but we happened to have the best possible scenario where we had an update-update conflict.

I’d like to note that I personally hate working with SQL Server peer-to-peer replication (we’re running SQL 2008 R2 version), and it looks like some of the limitations of the solution are still an issue in SQL 2012.

  • We have to quiesce (i.e. stop the application) in order to add new articles (tables, views etc), to the replication topology.  Big pain + off hours work.
  • Plus, unlike with MySQL replication when setup in multi-master, I can’t just not log my correction statements so they don’t replicate back.
  • This is why I’m excited for the Always On Availability groups in SQL 2012/2014, with a multi-subnet setup.  I’m still evaluating our environment options but this helps address some of the limitations in our peer-to-peer replication environment.

Continue reading

Why the Polyglot DBA?

I have been a database administrator now for over 15 years, almost from the start I have been working on multiple database technologies.  My original focus was on Oracle, and SQL Server soon after.  A few years ago I decided to go for a change and focus on MySQL, and in my current position I’m managing MySQL, SQL Server & ramping up with MongoDB.  I chose polyglot DBA as polyglot is defined as knowing or using several languages, each of these databases has it’s own unique features that need to be understood.

As I continue to work with & learn new features of these technologies, I wanted a place to track my thoughts & notes.  There are a lot of great blogs that I follow, but sometimes I find that I need more information – are there prerequisites that are missing?  Do I need more detail on why something is done a certain way?  I document a lot, when working with large teams and being a technical lead I had to get standard procedures set.

Continue reading