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.
I recently had to set up a nightly copy of a set of databases, I had looked around for other solutions but I didn’t see one quite what I wanted. I also ran into an issue with powershell when I moved my script to SQL 2012, and thought it was good to share.
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.