Резервное копирование базы данных Redmine
Разберем как делать резервные копии базы данных Redmine, а так же прикрепленных файлов. Реализовывать резервное копирование будем с помощью bash-скрипта.
Скрипт полностью с комментариями, разобраться и подстроить его под себя, не составит труда:
#!/bin/bash
# 06/01/2018 Jakonda (http://jakondo.ru)
# Резервное копирование (Redmine)
# Путь размещения резервных копий
LOCAL_DIR="/srv/backups/redmine"
EXPIRATION_DAYS=14
DATE=$(date +"%y_%m_%d")
# Создаем каталог для размещения резервных копий, если он не создан
if ! [ -d $LOCAL_DIR ]; then
mkdir $LOCAL_DIR
fi
# Создаем каталог с текущей датой
mkdir -p $LOCAL_DIR/$DATE
# Создание дампа базы данных (mysql)
mysqldump -u root -p512356 redmine | gzip > $LOCAL_DIR/$DATE/redmine_db.sql.gz
# Резервная копия прикрепленных файлов (redmine)
cd /opt/redmine/files/
tar -czvf $LOCAL_DIR/$DATE/redmine_files.tar.gz *
cd
# Удаление старых резервных копий
find $LOCAL_DIR* -mtime +${EXPIRATION_DAYS} -exec rm {} \;
# Удаление пустых каталогов
find $LOCAL_DIR* -type d -empty -exec rmdir {} \;
Таким образом мы получаем на выходе структурированную резервную копию, за определенный период.
Обсуждение
Нет комментариев.