Стратегия резервного копирования Bitnami Redmine

StackOverflow https://stackoverflow.com/questions/1162045

  •  18-09-2019
  •  | 
  •  

Вопрос

Мы начали использовать Redmine на работе.Я знаю, что он использует MySQL в качестве базы данных и Apache 2 в качестве веб-сервера.Как можно правильно создать резервную копию Redmine, чтобы ее можно было быстро перезагрузить, если что-то пойдет не так?

Это было полезно?

Решение

Это будет просто замечательно:

mysqldump --single-transaction --user=user_name --password=your_password redmine_database > backup.sql

Это приведет к сбросу всего содержимого базы данных redmine_database в файл backup.sql.

Обновить:

Что касается резервного копирования "apache", как я заявляю в своем комментарии ниже - вам не нужно или вы не хотите создавать резервную копию вашей установки apache.Если вам когда-нибудь понадобится восстановить вашу систему, apache потребуется переустановить, как и любое другое приложение.Если вы имеете в виду реальные файлы и каталоги в вашей установке redmine, их также не нужно создавать резервные копии за исключением для файлов / каталога, который содержит загруженные пользователем файлы в redmine.Вы можете создать резервную копию всей вашей установки redmine (на всякий случай) с помощью следующей команды:

tar czvf redmine_backup.tar.gz /path/too/redmine/installation

Другие советы

Запустите его как виртуальную машину (я полагаю, у JumpBox есть quickstartable), затем периодически приостанавливайте или выключайте виртуальную машину и создавайте резервную копию всего виртуального диска.

Я знаю, что это не помогает при существующей установке, но это то, что я бы порекомендовал всем, кто планирует резервное копирование до того , как они реализуют.Это не должно быть ехидством, просто полезно для всех, кто еще читает эту тему.

Битнами приложения являются автономными, поэтому другой вариант, если вы можете позволить себе некоторое время простоя, - это просто выключить сервер и заархивировать содержимое каталога ...Возможно, вы захотите делать это, возможно, раз в неделю, в дополнение к резервным копиям mysqldump.Таким образом, вы также фиксируете любые изменения, которые могли произойти в Apache и т.д.

Читать руководство пользователя Redmine (посмотрите на нижнюю часть).

Кроме того, не забудьте создать резервную копию вложенных файлов.

Резервные копии Redmine должны включать:

  • Данные (хранятся в вашей базе данных redmine)
  • вложения (хранятся в каталоге files вашей установки Redmine)

Вот простой сценарий оболочки, который можно использовать для ежедневного резервного копирования (при условии, что вы используете базу данных MySQL):

# Database
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz

# Attachments
rsync -a /path/to/redmine/files /path/to/backup/files

Redmine устанавливает кодировку таблицы как "latin1".Итак, если вы используете кодировку non-latin1 (CJK в UTF-8 или что-то в этом роде), вы должны предоставить следующую опцию сценарию резервного копирования.

mysqldump -u root -p --default-character-set=latin1 --пропустить набор символов bitnami_redmine -r backup.sql

Он пропускает "установить кодировку бла-бла-бла" в sql-дампе, и вы получите чистый (= дамп без интерпретации) дамп.

Кстати, вам также необходимо создать резервную копию каталога files;в нем хранятся все загруженные файлы.Я установил стек Bitnami Redmine в Windows.

Для MySQL я использую MySQLAdmin для планирования резервного копирования базы данных каждый день.И я использую AceBackup для автоматического резервного копирования файлов дампа базы данных и файлов, загруженных Redmine на удаленный FTP-сервер.

Когда с сервером что-то не так, я могу просто переустановить Bitnami Redmine stack и импортировать файл базы данных, ранее сброшенный, затем заполнить каталог Redmine files файлами резервных копий.

И это нормально.

Это прекрасно разделяет программу (Bitnami Redmine stack) и данные (база данных и загруженные файлы).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top