>> package:
yum install holland-mysqldump
>> Auto install script:
#!/bin/bash which yum rc=$? if [ $rc != 0 ] ; then apt-get install -y python-setuptools python-mysqldb else yum install -y MySQL-python fi if [ ! -f holland-1.0.10.tar.gz ] ; then wget http://hollandbackup.org/releases/stable/1.0/holland-1.0.10.tar.gz fi if [ ! -d holland-1.0.10 ] ; then tar zxf holland-1.0.10.tar.gz fi cd holland-1.0.10 python setup.py install cd plugins/holland.lib.common/ python setup.py install cd ../holland.lib.mysql/ python setup.py install cd ../holland.backup.mysqldump/ python setup.py install cd ../../config mkdir -p /etc/holland/providers mkdir -p /etc/holland/backupsets cp holland.conf /etc/holland/ cp providers/mysqldump.conf /etc/holland/providers/ cp backupsets/examples/mysqldump.conf /etc/holland/backupsets/default.conf cd /etc/holland sed -i 's=/var/spool/holland=/var/lib/mysqlbackup=g' holland.conf sed -i 's/backups-to-keep = 1/backups-to-keep = 7/g' backupsets/default.conf sed -i 's/file-per-database.*=.*no/file-per-database = yes/g' backupsets/default.conf sed -i 's/file-per-database.*=.*no/file-per-database = yes/g' providers/mysqldump.conf hour=$(python -c "import random; print random.randint(0, 4)") minute=$(python -c "import random; print random.randint(0, 59)") echo '# Dump mysql DB to files. Time was chosen randomly' > /etc/cron.d/holland echo "$minute $hour * * * root /usr/local/bin/holland -q bk" >> /etc/cron.d/holland mkdir -p /var/lib/mysqlbackup mkdir -p /var/log/holland chmod o-rwx /var/log/holland echo echo echo "Holland should be installed now." echo "Test backup: holland bk" echo "See cron job: cat /etc/cron.d/holland" echo "See backups: find /var/lib/mysqlbackup/"
>> Where is the DB conf file:
/etc/holland/backupsets
>> When it runs
cat /etc/cron.d/holland
>> Test command to see if all works without actually run it
holland bk --dry-run
>> /etc/holland/backupsets/default.conf
[mysql:client] defaults-extra-file = /root/.my.cnf