... Frankly, anno 2015 it's ridiculous beyond words that a database can't back itself up without going off line. ... which means we just have to suck it up.
You're right, of course, but no, you shouldn't have to just sit and suffer.
Even mysql can now run a replica slave and you can backup the slave without off-lining the master these days. ...
I thought of several quick hacks using a read replica, or "slave". But each hack would prevent writes.
Am I too picky? I think a read-only ScubaBoard is an unusable ScubaBoard.
After a little more consideration, I could not come up with a reason why a master-master replication pair would not be able to solve this problem. Implemented correctly, this drastic revision of the back end would not be visible to the app at all.
Any backup script would need to 1) break replication, 2) choose one instance and cause that instance to be isolated from the app, 3) snapshot that instance, 4) re-establish replication, and 5) verify that the masters have fully synchronized, are passing writes in both directions successfully, and are committing those writes to reliable media.
As a bonus, SB would get a new set of DR tools and walk a little further down the path toward having a site that is always up and usable, even during upgrades.