Sounds like you have computer A and B with server C. When able (the link is up), computer A & B do a bi-directional sync to server C. Man that REALLY sucks you have to work around the networking issue. I'd think one of the advantages of doing this whole new system would be to have just one database to do queries against, one place to maintain, etc. I guess you're just getting a system in place that's ready to be deployed into multiple locations around the world and there's no single point of failure.

What database server are you going to go with? MySQL, Postgres, Firebird, or something else?

Since you're in the planning stage, I'd start thinking of a way to store your db in the cloud online as the backup to the local backup. You got you grandfather, father, son thing going locally and then an offsite backup, and then your worst case scenario backup...the one in the cloud. One idea could be to export the db into a flat file, 7-zip it (LZMA compression), then encrypt it with PGP (or whatever) or use 7-zip's built-in AES256 encryption. Use SSH to copy it offsite or use something like Carbonite, Dropbox, etc.

http://en.wikipedia.org/wiki/List_of...ackup_services

Will the db server be running Linux? Sounds like you're on a budget so I assume the db is local on each machine and that third machine isn't a server, it's just another windows box in another room.