Project

General

Profile

DeRedmineBackupRestore » History » Version 5

C S, 2021-01-26 14:40
Falschen Hinweis im Header entfernt

1 5 C S
Übersetzung der "Rev. 9":https://www.redmine.org/projects/redmine/wiki/RedmineBackupRestore/9 
2 1 C S
3
h1. Sichern und Wiederherstellen von Redmine
4
5 2 C S
{{>toc}}
6
7 1 C S
h2. Backup
8
9
Redmine-Backups sollten Folgendes enthalten:
10
11
* Datenbank
12
* Anhänge (standardmäßig im @files@ Ordner unter dem Installationsverzeichnis gespeichert)
13
14 3 C S
h3. Sicherung der Datenbank
15 1 C S
16 3 C S
h4. MySQL
17
18 1 C S
Mit dem Befehl @mysqldump@ können Sie den Inhalt Ihrer MySQL-Datenbank in einer Textdatei sichern. Zum Beispiel:
19
20
<pre>
21
/usr/bin/mysqldump -u <username> -p<password> -h <hostname> <redmine_database> > /path/to/backup/db/redmine.sql
22
</pre>
23
24
Sie finden <username>, <password>, <hostname> und <redmine_database> in der Datei @config/database.yml@. <host_name> ist je nach Installation der Datenbank möglicherweise nicht erforderlich.
25
26 3 C S
h4. PostgreSQL
27 1 C S
28
Mit dem Befehl @pg_dump@ können Sie den Inhalt einer PostgreSQL-Datenbank in einer Textdatei sichern. Hier ist ein Beispiel:
29
30
<pre>
31
/usr/bin/pg_dump -U <username> -h <hostname> -Fc --file=redmine.sqlc <redmine_database>
32
</pre>
33
34
Sie finden  <username>, <hostname> und <redmine_database> in der Datei @config/database.yml@. <hostname>  ist abhängig von Ihrer Installation der Datenbank möglicherweise nicht erforderlich. Der Befehl @pg_dump@ fordert Sie bei Bedarf zur Eingabe des Kennworts auf.
35 3 C S
36
h4. SQLite
37
38
SQLite-Datenbanken bestehen jeweils nur aus einer einzigen Datei, sodass diese recht einfach durch eine Kopie an einen anderen Speicherort gesichert werden können.
39
40
Sie können den Dateinamen der SQLite-Datenbank anhand der Konfigurationsdatei ermitteln. Diese liegt unter @config/database.yml@.
41
42
h3. Anhänge sichern
43
44
Alle Datei-Uploads werden in @attachments_storage_path@ gespeichert (standardmäßig in das Verzeichnis @files/@). Sie können den Inhalt dieses Verzeichnisses an einen anderen Speicherort kopieren, um es einfach zu sichern.
45
46
*WARNUNG:* @attachments_storage_path@ verweist möglicherweise auf ein anderes Verzeichnis als @files/@. Überprüfen Sie unbedingt die Einstellung in @config/configuration.yml@, um eine korrekte Sicherung sicherstellen zu können.
47
48
h3. Beispielsicherungsskript
49
50
Hier ist ein einfaches Shell-Skript, das für tägliche Sicherungen verwendet werden kann (vorausgesetzt, Sie verwenden eine MySQL-Datenbank):
51
52
<pre>
53
# Database
54
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%Y-%m-%d`.gz
55
56
# Attachments
57
rsync -a /path/to/redmine/files /path/to/backup/files
58
</pre>
59 4 C S
60
h2. Wiederherstellung
61
62
h3. Datenbank wiederherstellen
63
64
h4. MySQL
65
66
Wenn Sie beispielsweise eine komprimierte Sicherungsdateisdatei mit dem Namen @2018-07-30.gz@ haben, kann die Datenbank mit dem folgenden Befehl wiederhergestellt werden:
67
68
<pre>
69
gunzip -c 2018-07-30.gz | mysql -u <username> --password <redmine_database>
70
Enter password:
71
</pre>
72
73
h4. PostgreSQL
74
75
Wenn die Option @-Fc@ des Befehls @pg_dump@ wie im obigen Beispiel verwendet wird, müssen Sie den Befehl @pg_restore@ verwenden:
76
77
<pre>
78
pg_restore -U <username> -h <hostname> -d <redmine_database> redmine.sqlc
79
</pre>
80
81
andernfalls kann eine Textdatei mit dem Befehl @psql@ wiederhergestellt werden:
82
83
<pre>
84
psql <redmine_database> < <infile>
85
</pre>
86
87
h4. SQLite
88
89
Kopieren Sie die Datenbankdatei einfach von Ihrem Sicherungsordner in den Zielordner.
90
91
h3. Anhänge wiederherstellen
92
93
Kopieren Sie die Dateien aus Ihrem Sicherungsordner wieder in das entsprechende Zielverzeichnis zurück.