The way you do Master/Slave with ActiveMQ is to keep the persistence store some place shared. While it work with most major databases using plain JDBC, it still requires features like table lock to figure out which server is the master. There are no JDBC/SQL drivers for MongoDB that I am aware of that can handle this properly.
The recommended approach to ActiveMQ Master/Slave is to use a shared disk area somewhere for persistency (SAN or similar). The JDBC approach is very slow, even with SQL database servers.
And - NO. The database is not for synchronization only. Every persistent message will be written to it.
Update
As of ActiveMQ 5.9.0 there is also a clustered approach available which uses LevelDB.