We have started to help remote businesses with there Microsoft SQL database replication processes. We have successfully implemented Merge Replication, Transactional Replication and Snapshot Replication.
Merge replication requires a unique column for the data and might not be suitable for all custom applications. Also Transactional Replication has the same limitation though it only needs a primary Key in every table. Snapshot replication however is the slowest but replicates the database on a level which is an exact copy of the original database, and does not require any extra columns or primary key restrictions.
The specific client wanted replication from their local office to AWS Amazon Web Services server. We were able to open the required ports and configure the replication securely over Access List in the firewall.
Mirror replication however was unsuccessful due to problems on the live Database server, troubleshooting it means we have to take the server down, which is not an option for this 99% highly available database.