Scheduled database backup with notification and archiving script

Hello,

I have been searching for a method to backup my FiveM database and I found several solutions but not completely satisfying my needs.

So I created my own Powershell script to backup the database that is currently hosted on a MariaDB server. But is works also for databases running on mySQL because the mySQLDump utility is used to create a logical backup of the database.

I added code to archive a set of database backup files. The number of how many database backups the set should contain is configurable via a config / parameter file that is written in YAML format.
All parameters like, location of executable files, backup folder, log folder, list of e-mail addresses, database name, protocol, portnumber, servername, etc are all key-value pairs in that same YAML file and are used in the main Powershell script as variables.
I also added an e-mail notification after each succesful or failed backup and the possibility to send you archived database backup files as an attachment.

Some manual steps are involved for the first initial setup and configuration, like providing the values in the YAML file and creating the scheduled task in the Windows server.

You can find it here:

If you miss functionality or if there is something wrong please let me know on github and I will try to fix it.

grtz,
Dutch