We have a new project running on a Windows 2016 server that uses PostGre 10. We are getting ready to move into production in a few months and need a database backup/disaster recovery solution designed and implemented on the server. This is our first PostGre solution and we could use help getting a database disaster recovery solution defined and setup on the server.
The solution should at minimum do the following
- Create a full backup every night so that it can be stored offsite through an existing replication process (writes backup to local drive)
- Create a full backup at a specified time (i.e. 2:00AM)
- Keep 7 days of backups in this folder, and delete all backups older than 7 days
- Create incremental backup of at all times that can be used for local restoration of data not included it full backups on a local drive.
- Based on free or open source tools (i.e. pg_dump, pgBackRest, pg_basebackup, etc.)
- Highly reliable
- Suitable to a mid-sized database (10-20GB) with a moderate daily transaction load during daylight hours
- Overnight backup would take less than 2 hours
- Incremental process (i.e. WAL) does not significantly impact server resources
- Restoration time is less than two hours including full and incremental
- Restoration is not overly complex
Nice to haves
- Portable and would also work on Kubernetes deployed environments with some reconfiguration/setup.
- Would allow backups to be written to cloud locations
- Would send email notifications on critical errors
- Logging of backup processes and actions
- Alignment to industry best practices - something like this?: [login to view URL]
- Ability to modify general parameters of the process (i.e. notifications, times, destinations)
- We will not grant access to the server for setup - actual setup would be done using a Skype call / screen share with someone in English. You should be prepared to guide someone on our team with server experience through the setup process remotely.
- First payment will be made on delivery of an approved solution design
- Second (final) payment will be made upon the solution being implemented on our server