What you are looking for is best achieved in the operating system level. You can use something like rsync to synchronize the files. regarding the databases, you can either pipe the output of mysqldump to the command-line mysql utility or - if you are on different servers - set up the second site's database as a slave and the first site's database as a master and have them automatically synchronize.
In theory you could create a CRON job which runs the backup on the source site, transfers the backup archive to the destination site and restore it. The restoration part requires a lot of custom code to be written, as you wouldn't like to fire up a browser during that step. It's too much of a hassle to set up and not a very cheap solution either (because of all the custom development required).
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!