An open API service indexing awesome lists of open source software.

https://github.com/ome/ansible-role-mysql-backup

Setup a cron job for regular full Mysql/Mariadb database dumps.
https://github.com/ome/ansible-role-mysql-backup

ansible backup database mariadb mysql

Last synced: 4 months ago
JSON representation

Setup a cron job for regular full Mysql/Mariadb database dumps.

Awesome Lists containing this project

README

          

MySQL Backup
============

[![Actions Status](https://github.com/ome/ansible-role-mysql-backup/workflows/Molecule/badge.svg)](https://github.com/ome/ansible-role-mysql-backup/actions)
[![Ansible Role](https://img.shields.io/ansible/role/41994.svg)](https://galaxy.ansible.com/ome/mysql_backup/)

Setup a cron job for regular full Mysql/Mariadb database dumps.

Assumes `root` has password-less access to all databases.

Dependencies
------------

This requires a cron daemon to already be running.
This should be the default on most systems.

Role Variables
--------------

Required:
- `mysql_backup_dir`: Save backups in this directory

Optional:
- `mysql_backup_filename_format`: A filename containing unix `date` format sequences, default `{{ ansible_hostname }}-%Y%m%d-%H%M%S.mysqldump`.
This can be used to automatically overwrite backups on a rolling basis.
- `mysql_backup_frequency`: This must match one of the standard `/etc/cron.*` directories, typically either `daily` (default), `hourly`, `weekly` or `monthly`.
- `mysql_backup_minimum_expected_size`: The minimum size in bytes of the backup file.
The cron job will return an error if the file is smaller than this.

Example playbook
----------------

# This will name the backup file /nfs/backups/HOSTNAME-Mon.mysqldump
# where Mon will be replaced by the abbreviated day of the week, resulting
# in daily backups on a rolling weekly cycle
- hosts: mysql-servers
roles:
- role: ome.mysql_backup
mysql_backup_dir: /nfs/backups
mysql_backup_filename_format: "{{ ansible_hostname }}-%a.mysqldump"
mysql_backup_minimum_expected_size: 100000

Author Information
------------------

ome-devel@lists.openmicroscopy.org.uk