Sql-server – sync MS SQL Server 2014 and Express 2014 Database using Stored Procedure

data synchronizationsql serversql server 2014

I have C# windows form application and I have same database schema on both MS SQL Server(for master user) and on SQL Express(for clients). My database size is around 2 GB for each client.

I want to synchronize this databases once in a day. In MS SQL Server 2008 we have used RMO but RMO API deprecated in SQL Server 2012.

Is there any good suggestion or example then refer it. I am new to database operations so i don't have much idea bout this.

Best Answer

I fully expect down-votes on this, but deprecated doesn't mean discontinued. When a feature is deprecated it generally means that said feature won't be expanded and will likely be removed in a future release. According to MS documentation RMO doesn't show up under features that were discontinued in either SQL 2014 or SQL 2016, but again I wouldn't count on it being available going forward.

The point here is if you've already got something that works using RMO with SQL 2012, see if it works in 2014 and continue using it. No point to reinvent the wheel if you don't have to. Who knows, in 5-years-time you may no longer use this application, this back-end, or even this approach. It's also entirely possible that RMO could turn into something similar to the sysindexes view that was deprecated way back in SQL 2005 but is still in SQL 2017 by the looks of it.

In terms of an official "supported" approach, Merge Replication, as stated by Bartosz X in the comments is your best bet, based on what it sounds like you want to accomplish. Some additional searching on DBA.SE or Google should get you going.