Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Keep local backups #9

Open
TJM opened this issue Jun 15, 2015 · 2 comments
Open

Keep local backups #9

TJM opened this issue Jun 15, 2015 · 2 comments

Comments

@TJM
Copy link

TJM commented Jun 15, 2015

There should be an option to keep backups locally. Still send them to dumper.io of course, but basically just don't delete the local file until it has reached a certain age, or keep a certain number of backups. (I would offer both capabilities).

This would mean that Dumper would be able to provide local and offsite backups, without taxing the database twice.

@kenn
Copy link
Member

kenn commented Jun 16, 2015

Interesting idea, but that introduces new problems.

  • Security. Dump files are only protected by file permission. Maybe dump encryption would mitigate the issue.
  • Pruning. You say "Just don't delete the local file until it has reached a certain age" but for Dumper configuration has to be controlled over the web UI, and probably it's best to synchronize the behavior with the remote backups for the user's mental model / expectation, which means a new set of API. It's actually not easy to do that reliably.
  • Reliable pruning is much more critical on local because there's this fatal "disk full" error, which doesn't exist on S3. Theoretically, if your database is 25% of the size of the disk, you can't keep 4 copies of them, and what should we do then? etc. There won't be an unobtrusive solution without asking the user for a decision. Probably leaving only the last backup locally (and delete everything else) would be a good start.

@TJM
Copy link
Author

TJM commented Jun 16, 2015

Good points... I was going to make that part of the configuration be in the initializer or whatever. Leaving the last backup local would allow someone to hook in after the backup runs (successfully) and "do something" with the file if they want to.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants