Automated backup

How do you deal with automatic backup of your databases in your applications ?
back up once or twice a day or writing to 2 or more disks when doing writes. are there any support libraries for elixir that could be useful ?

Normally I do data base writes on 3 different mirrored databases but queries from the main one , then switching over to the secondary if primary fails and I have the tertiary as backup.

2 Likes

Not sure how exactly are you archiving / mirroring your database, but I did use wall-e in the past with great success.

We actually had to recover the state of database at given point in time to investigate the incident that happened. Postgres has this Wrire-Ahead-Log that basically is a log of all events that happen in database. This tool allows you to archive that, and do point-in-time recovery if needed. So you can say restore to database state as of 11:00 GMT, and then 11:01 GMT etc. Highly recommended:
https://github.com/wal-e/wal-e

2 Likes

I wrote a custom c wrapper that distributed the data from the robots to the redundant system and the company’s oracle mess.

I am gonna give wal-e a test. Thanks :slight_smile:

Ugh, but this thing is for Postgres only so won’t work if you have to deal with Oracle.

1 Like

I am learning to appreciate and love Postgres. so I will be sticking to that for now.

I`m not gonna work with oracle anymore. Postgres will be my main go to DB

2 Likes

We use a Raid 0 set-up and then daily backups that are stored on the server as well as copied off-server and kept for 30 days.

For any commerce sites we also use the Ruby backup gem to back up to AWS for extra contingency and usually several times a day.

1 Like

How do you deal with automatic backup of your databases in your applications ?

Amazon AWS RDS instances get an automatic daily snapshot, plus
we do a daily cron-driven mysqldump which is stored to S3 - largely
a holdover from the pre-RDS days.

Obviously those could both be done more frequently if the use case
warranted it.