romach
5/25/2018 - 4:04 PM

Backup and restore database

#create backup
backup_dir="/root/backup_test/"
innobackupex --host=localhost --socket=/var/run/mysqld/mysqld.sock --user=root --password=root --slave-info --extra-lsndir=${backup_dir} --stream=xbstream --compress ${backup_dir} | gzip > ${backup_dir}/backup_$(date +%Y%m%d%H%M%S)_full.xbstream.gz 

### restore
datadir="/var/lib/mysql/"
gzip --keep --decompress /root/backup_test/backup_20180524190136_full.xbstream.gz 

# clean up datadir
rm -rf ${datadir}/* 

xbstream -x < /root/backup_test/backup_20180524190136_full.xbstream -C ${datadir}

find ${datadir} -name '*.qp' -print -exec bash -c 'qpress -d {} $(dirname {}) && rm -f {}' \;
chown -R mysql.mysql ${datadir}
systemctl start mysql