Hi Michael,
Is this a good idea ?
Kind of good. However, you are locking the database for no good reason, because the interesting data is mostly stored in the RRD files.
Caring about the database's integrity at snapshot time is, IMHO, a bit too much effort.
Also, if the same lvm volume stores the RRDs, you at least would have a consistent DB+RRDs snapshot/backup. Still, if you 'really' want to be consistent, you should stop the polling as well ...
Given that these backups will probably be of use only in a sort of Disaster Recovery scenario, I guess that missing a sample on the RRDs or very latest info in the database is the least of your concerns.
But I may be mistaken about your specific requirements, so feel free to ignore ;)
As you're already running in AWS,I would have 2 suggestions:
1. Use AWS RDS for your database. Snapshots are automated. Given that observium stores it's real metrics in RRD files, the database really is not changing that much that you need an absolute standstill for the snapshot.
2. If not using AWS RDS, a simple way to get consistent snapshots without actually interfering with the database is to have a mysql slave that you can pull (STOP SLAVE) and do your backup there. Again, RRD consistency may not be on par, and the gain may not be up to the price you'll pay for additional resources.
HTH,
Ahmed.