Project

General

Profile

DeRedmineUpgrade » History » Version 17

C S, 2023-03-23 14:08
Updated to original Rev. 84

1 15 C S
Übersetzung der "Rev. 82":http://www.redmine.org/projects/redmine/wiki/RedmineUpgrade/82
2 1 Robert Schneider
3
{{>TOC}}
4
5
h1. Upgrading
6
7 15 C S
Die folgende Dokumentation behandelt das Aktualisieren von Redmine auf Version 2.x oder höher. Eine "frühere Version dieser Seite auf Englisch":/projects/redmine/wiki/RedmineUpgrade?version=53 enthält das Upgrading auf Redmine 1.x.
8 1 Robert Schneider
9
h2. Schritt 1 - Anforderungen überprüfen
10
11 15 C S
Der erste Schritt für das Upgrade ist, zu überprüfen, ob die [[DeRedmineInstall#Anforderungen|Anforderungen]] der Version, die installiert werden soll, erfüllt werden.
12 1 Robert Schneider
13
h2. Schritt 2 - Sicherung
14
15
Es wird empfohlen, die Datenbank und die hochgeladenen Dateien zu sichern. Die meisten Upgrades laufen ohne Probleme ab, doch kann es nie schaden, eine Sicherung für den Fall der Fälle zu besitzen.
16 15 C S
Weitere Informationen hierzu finden Sie unter [[DeRedmineBackupRestore|Sichern und Wiederherstellen von Redmine]]
17 1 Robert Schneider
18
h2. Schritt 3 - Das Upgrade durchführen
19
20 15 C S
Nun ist es Zeit, die eigentliche Aktualisierung vorzunehmen. Dieser Vorgang fällt, je nachdem, wie Redmine bezogen wurde, unterschiedlich aus. Nur *eine* der beiden folgenden Optionen ist nun durchzuführen.
21 1 Robert Schneider
22
h3. Option 1 - Eine stabile Version herunterladen
23
24 15 C S
*1.* [[Download|Herunterladen]] des Releases, entweder als tar.gz- oder als zip-Format, mit anschließendem Entpacken des Archivs in ein neues Verzeichnis. Entpacken des Archivs in ein neues Verzeichnis.
25 1 Robert Schneider
26 15 C S
*2.* Kopieren der bestehenden Datei @config/database.yml@ (die Datenbankeinstellungen enthält) in das neue @config@-Verzeichnis. Falls Redmine >= 1.4 mit MySQL und Ruby 1.9 verwendet wird, so muss der Datenbankadapter in der Datei auf @mysql2@ gesetzt sein. 
27 2 Robert Schneider
28 15 C S
Stellen Sie sicher, dass für die neu extrahierten und kopierten Dateien und Verzeichnisse der richtige Eigentümer und die richtige Gruppe festgelegt sind, damit der Benutzer / die Gruppe, auf der Ihr Anwendungsserver ausgeführt wird, tatsächlich auf die Dateien zugreifen kann. Insbesondere ist darauf zu achten, dass bei den Verzeichnissen @files@, @log@ und @tmp@ Schreibrechte vorhanden sind.
29 2 Robert Schneider
30 15 C S
*3a.* Kopieren der bestehenden Datei @config/configuration.yml@ (die generelle Einstellungen enthält) in das neue @config@-Verzeichnis. 
31 4 Robert Schneider
32 15 C S
*3b.* Oder: *falls von einer Version vor 1.2.0 aktualisiert wird*, die Email-Einstellungen aus der Datei @config/email.yml@ in die neue Datei @config/configuration.yml@ kopieren. Diese kann auch durch das Duplizieren und Umbenennen der Datei @config/configuration.yml.example@ erstellt werden.
33 4 Robert Schneider
34 15 C S
*4.* Kopieren des Verzeichnisinhaltes aus @files@ in das gleichnamige Verzeichnis in der neuen Installation (das Verzeichnis enthält alle hochgeladenen Dateien).
35 1 Robert Schneider
36 15 C S
*5.* Kopieren der Verzeichnisse der *eigenen* (selbst installierten) Plugins aus dem @plugins@ Verzeichnis (oder aus @vendor/plugins@, falls von einer Version vor 1.x aktualisiert wird) in das Verzeichnis @plugins@ der neuen Installation. Stellen Sie sicher, dass Sie nur Plugins kopieren, die ursprünglich nicht mit Ihrem vorherigen Redmine-Setup gebündelt wurden.
37 1 Robert Schneider
38 16 Robert Schneider
*6.* Installieren der benötigten Gems
39 1 Robert Schneider
40 17 C S
<pre>bundle config set --local without 'development test' 
41
 bundle install 
42
</pre>
43 4 Robert Schneider
44
Es werden dabei lediglich die für die Adapter benötigten Gems installiert, die in der Konfigurationsdatei für die Datenbankverbindung angegeben sind (z.B. wenn in @config/database.yml@ der _mysql2_Adapter in Verwendung ist, so wird nur das Gem mysql2 installiert). Falls @config/database.yml@ so verändert wird, dass ein anderer Datenbankadapter verwendet werden soll, so ist 'bundle install' jedes Mal erneut aufzurufen!
45
46 15 C S
Weitere zu installierende Gems, die nicht direkt von Redmine benötigt werden, können diese in einer eigenen Datei mit dem Namen @Gemfile.local@ im Root-Verzeichnis angegeben werden. Sie ist ggf. erst anzulegen. Sie wird dann automatisch beim Ausführen von @bundle install@ geladen und installiert die dort angegebenen Gems.
47 4 Robert Schneider
48
*7.* Ausführen der folgenden Anweisungen im Root-Verzeichnis der neuen Redmine-Installation:
49 1 Robert Schneider
 
50 4 Robert Schneider
Falls von einer Redmine-Version vor 2.x aktualisiert wird, zunächst diese Datei löschen, sofern sie existiert: @config/initializers/secret_token.rb@
51
52
Dann mit folgender Anweisung ein neues 'Secret' erzeugen:
53 1 Robert Schneider
54 4 Robert Schneider
  bundle exec rake generate_secret_token
55
56
Alternativ kann dieses 'Secret' auch in config/secrets.yml gespeichert werden. Informationen dazu unter http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#config-secrets-yml
57
58
*8.* Falls Themes bisher verwendet wurde, so können diese aus @public/themes@ in das bleichnamige Verzeichnis des neues Installationsverzeichnis kopiert werden. Es ist aber sinnvoll, vorher zu überprüfen, ob eine neue Version des Themes verfügbar ist.
59 1 Robert Schneider
60 4 Robert Schneider
BESONDERS WICHTIG: @config/settings.yml@ sollte NICHT mit der alten Datei überschrieben werden.
61
62
h3. Option 2 - Upgrade über ein SVN-Checkout
63
64 1 Robert Schneider
*1.* Im Root-Verzeichnis der bestehenden Redmine-Installation diese Anweisung ausführen:
65
66
<pre><code>svn update</code></pre>
67 5 Robert Schneider
68
*2.* Installieren der benötigten Gems mit folgender Anweisung:
69 1 Robert Schneider
70 5 Robert Schneider
<pre><code>bundle udpate</code></pre>
71
72
h2. Schritt 4 - Die Datenbank aktualisieren
73
74
Dieser Schritt ist jener, der die Datenbank verändern könnte. Dafür ist im Redmine-Verzeichnis folgende Migrationsanweisung ausführen:
75 1 Robert Schneider
76 6 Robert Schneider
<pre><code>bundle exec rake db:migrate RAILS_ENV=production</code></pre>
77
78
Falls Plugins installiert sind, so sollten auch ihre Datenbankmigrationsanweisungen durchgeführt werden:
79
80
<pre><code>bundle exec rake redmine:plugins:migrate RAILS_ENV=production</code></pre>
81
82
h2. Schritt 5 - Aufräumen
83 1 Robert Schneider
84
*1.* Leeren des Caches und Löschen bestehender Sessions:
85 7 Robert Schneider
86 15 C S
<code><pre>bundle exec rake tmp:cache:clear RAILS_ENV=production</pre></code>
87 7 Robert Schneider
88
*2.* Neustarten des Anwendungsservers (z.B. puma, thin, passenger).
89
90 15 C S
*3.* Abschließend im Browser auf _"Administrationn -> Rollen und Berechtigungen"_ gehen, um dort die Berechtigungen möglicher neuer Features einzustellen.
91 7 Robert Schneider
92 1 Robert Schneider
h2. Häufige Probleme
93
94 9 Robert Schneider
h3. Fehler beim Management von Subversion-Projektarchiven
95 8 Robert Schneider
96 15 C S
Der Datei reposman.rb wurden mehrere neue Funktionen hinzugefügt. Stellen Sie sicher, dass Sie eine Gruppe angegeben haben, wenn Sie Probleme haben  ( --group=groupnamehere). Stellen Sie außerdem sicher, dass Sie die Anweisungen *[[Repositories_access_control_with_apache_mod_dav_svn_and_mod_perl|hier]]* erneut befolgen, wenn Sie nur Ihre Redmine.pm nur kopiert haben. Des Weiteren aktualisieren Sie ggf. Ihre Apache-Konfiguration, wenn sich die empfohlene Konfiguration geändert hat.
97 1 Robert Schneider
98
h3. secret_token.rb neu erstellen
99
100 11 Robert Schneider
Vor der Version version:2.0.0 war es nötig eine Datei @session_store.rb@ im Verzeichnis @config@ anzulegen, um Cookie-basierte Sessions zu ermöglichen.
101
102
Seit Version version:2.0.0 wird diese Datei nicht mehr benötigt und sollte daher erst gar nicht existieren. Stattdessen wird mit folgender Anweisung die Datei @secret_token.rb@ generiert.
103
104
  bundle exec rake generate_secret_token
105
106 15 C S
_Hinweis: Der Code im Projektarchiv von Redmine selbst enthält die Datei @config/initializers/secret_token.rb@ nicht. Sie wird durch die obige rake-Anweisung erst erzeugt._
107 11 Robert Schneider
108 1 Robert Schneider
h3. Weitere Hilfen
109 12 Robert Schneider
110 14 Robert Schneider
Beim Aktualisieren von Redmine können auch diese Quellen weiterhelfen:
111 12 Robert Schneider
112
* Fehler beim Browsen in der Wiki-Historie nach einem Upgrade von Redmine-Version 1.x mit einer SQLite-Datenbank: #12501.
113
* "mod_fcgid for Apache2":http://httpd.apache.org/mod_fcgid/, um Rails mit Apache 2 zum Laufen zu bringen
114 1 Robert Schneider
* HowTo: [[HowTo_configure_Apache_to_run_Redmine|Apache für Redmine konfigurieren]]
115 13 Robert Schneider
* "Bemerkungen zu Problemen und deren Lösung beim Upgrade von Version 0.8.6 auf 0.9.3":http://web.archive.org/web/20111214022108/http://www.cybersprocket.com/2010/project-management/upgrading-redmine-from-8-6-to-9-3/ --cybersprocket (14.08.2010)
116
* "Bemerkungen zur Vorgehensweise beim Upgrade von Version 0.9.6 auf 1.0(RC)":http://web.archive.org/web/20120610010521/http://www.cybersprocket.com/2010/tips-tricks/upgrading-redmine-from-0-9-6-to-1-0-0/ --cybersprocket (14.08.2010)