Database synchronization Database synchronization database database

Database synchronization


You have a host of issues with thinking about such a solution. First, there are lots of possible solutions, such as:

  • Using database replication within a database, to mimic every update (like a "hot" backup)
  • Building an application to copy the database periodically (every night)
  • Using a third-party tool (which is what you are asking, I think)

With replication services, the connection does not have to always be up. Changes to the database are logged when the connection is not available and then applied when they can be sent.

However, there are lots of other issues when you leave a corporate network. What about security of the data and access rights? Do you have other options, such as making it easier to access the database from within the network? Do the users need only read-access to the database or read-write access? Would both versions need to be accessed at the same time. Would there be updates to both at the same time?

You may have other options that are more secure than just moving a database to the cloud.


I believe RemObjects DataAbstract allows offline mode and synchronization by using what they call Briefcases. All your other requirements (security, encrypted connections, etc.) are also covered.

This is not a drop-in replacement, thought, and may need extensive rewrite/refactoring of your application. There are lots of upsides, thought; business rules can/should be enforced on the server (real security), scriptable business rules, multiplatform architecture, etc.


There are some products available in the Java world (SymmetricDS lgpl license) - apart from actually being a working system it is documents how it achieved synchronization. Connects to any db with jdbc support. . There is a pro version but the user guide (downloadable pdf) gives you the db schema plus rules on push pull syncing. Useful if you want to build your own.

Btw there is a data replication so tag that would help.