Project

General

Profile

DeRedmineInstall » History » Version 31

Robert Schneider, 2015-07-12 23:32

1 1 Robert Schneider
{{>toc}}
2 14 Robert Schneider
3 30 Robert Schneider
Übersetzung von "Rev. 252":http://www.redmine.org/projects/redmine/wiki/RedmineInstall/252
4 14 Robert Schneider
5
h1. Installation von Redmine
6 1 Robert Schneider
7 2 Robert Schneider
Dies ist die Installationsanleitung für Redmine 1.4.0 und höher. Die Anleitung für 1.3.x findet sich "hier":/projects/redmine/wiki/RedmineInstall?version=146.
8
9
h2. Anforderungen
10
11
h3. Betriebssystem
12
13
Redmine sollte auf den meisten Unix-, Linux-, [[RedmineInstallOSX|Mac]]-, [[RedmineInstallOSXServer|Mac Server]]- und [[RedmineInstall#Notes-on-Windows-installation|Windows]]-Systemen laufen, sofern Ruby auf diesem System vorhanden ist. Weitere spezielle Installationsanleitungen finden sich  [[HowTos|hier]].
14
15
h3. Ruby-Interpreter
16
17
Die erforderliche Ruby-Version für die Redmine-Versionen sind:
18
19
|_. Redmine-Version|_. Unterstützte Ruby-Versionen                                |_. Verwendete Rails-Version|
20
|Aktueller Trunk     |ruby 1.9.3[3], 2.0.0[2], 2.1, 2.2[1]                      |Rails 4.2[0]      |
21
|3.0               |ruby 1.9.3[3], 2.0.0[2], 2.1, 2.2[1]                      |Rails 4.2[0]      |
22 28 Robert Schneider
|2.6               |ruby 1.8.7[4], 1.9.2, 1.9.3[3], 2.0.0[2], 2.1, 2.2, jruby-1.7.6|Rails 3.2         |
23 2 Robert Schneider
24 30 Robert Schneider
Redmine in Version version:2.6.5 unterstützt kein Ruby 2.2, jedoch die Version version:2.6.6 (#19652).
25 1 Robert Schneider
26 28 Robert Schneider
*Redmine 3.0 unterstützt kein JRuby* weil einige Gems nicht die Version 4.2 von Rails unterstützen.
27 27 Robert Schneider
** "Issue bei activerecord-jdbc-adapter":https://github.com/jruby/activerecord-jdbc-adapter/issues/599 
28
** "Issue bei loofah":https://github.com/flavorjones/loofah/issues/88
29 2 Robert Schneider
30 28 Robert Schneider
fn0. Rails 4.2.2 (Redmine-Version 3.0.3) hatte ein Problem mit Non-ASCII-URLs und MinGW-Ruby ("RubyInstaller für Windows":http://rubyinstaller.org/) thin und puma (#19321, #19374). Ist behoben in Rails-Version 4.2.3 (Redmine-Version 3.0.4).
31 2 Robert Schneider
32
fn1. MinGW-Ruby 2.2 hat ein nokogiri-Problem (#19419).
33
34
fn2. Zum Zeitpunkt des Verfassens dieser Wiki-Seite (3/19/2013) war der SQL Server Support mit Ruby 2.0.0 unter Windows wegen einer "Datenbankadapter/Gem-Inkompatibilität":https://github.com/rails-sqlserver/tiny_tds/issues/110  als defekt gemeldet.
35
36
fn3. MRI 1.9.3p327 enthält "einen Bug":http://bugs.ruby-lang.org/issues/7374, der das Laden der Plugins verhindert - im Gegensatz zu 1.9.3p194 oder 1.9.3p392.
37
38
fn4. Ruby MRI 1.8.7 hat sein Lebenszyklusende erreicht - vom Gebrauch wird daher abgeraten. message#38518 and #14371 liefert dazu weitere Informationen.
39 3 Robert Schneider
40
h3. Unterstützte Datenbanken
41
42
* MySQL 5.0 oder höher
43
** C bindings sollten installiert sein, was die Geschwindigkeit wesentlich erhöht. Sie lassen sich mit @gem install mysql2@ installieren.
44
** Redmine 2.x ist nicht mit MySQL 5.7.3 (#17460) kompatibel. Diese Version wird erst mit Redmine 3.x unterstützt.
45
46
* PostgreSQL 8.2 oder höher
47
** Der Datenstyle der Datenbank sollte auf ISO gesetzt sein (Standardeinstellung bei PorgresSQL). Dies kann mit mit @"redmine_db" SET datestyle="ISO,MDY";@ erreicht werden.
48
** Einige Bugs in PostgreSQL 8.4.0 und 8.4.1 wirken sich auf das Verhalten von Redmine aus (#4259, #4314). Sie wurden jedoch in PostgreSQL 8.4.2 gefixt.
49
50
* Microsoft SQL Server
51
** Redmine 2.x: 2008 oder höher (seit Redmine 2.3.0)
52
** Redmine 3.x: "2012 oder höher":https://github.com/rails-sqlserver/activerecord-sqlserver-adapter/blob/v4.2.3/README.md#activerecord-sql-server-adapter-for-sql-server-2012-and-higher
53
54
* SQLite 3 (nicht für den Produktiveinsatz mit mehreren Benutzern gedacht!)
55 4 Robert Schneider
56
h3. Optionale Komponenten
57
58
* SCM-Programme (z.B. @svn@) für das Browsen in Projektarchiven. [[RedmineRepositories]] enthält Informationen zu Kompatibilitäten und Anforderungen.
59
* "ImageMagick":http://www.imagemagick.org/ (um den Gantt-Export zu PNG-Bildern und die Generierung von Vorschaubildern zu ermöglichen).
60
* "Ruby-OpenID-Bibliothek":http://openidenabled.com/ruby-openid/ (um OpenID zu unterstützen). Es wird dazu Version 2 oder höher benötigt.
61 6 Robert Schneider
62
h2. Redmine-Version
63
64
Dem Großteil der Benutzer wird im Allgemeinen empfohlen, die entsprechenden Point-Releases zu installieren. Derzeit veröffentlicht Redmine alle sechs Monate eine neue Version - diese Veröffentlichungen werden als relativ gut einsetzbar und als stabil erachtet. Es wird *nicht* empfohlen Redmine von Trunk zu installieren, außer man ist mit Ruby on Rails sehr vertraut und bleibt mit den Änderungen auf dem letzten Stand - der Trunk-Zweig _kann zuweilen_ auch Fehler enthalten.
65 7 Robert Schneider
66
h2. Ablauf der Installation
67
68
h3. Schritt 1 - Redmine holen
69
70
Der Source-Code von Redmine kann entweder durch das Herunterladen eines gepackten Releases oder durch das Auschecken des Codes geholt werden.
71
72
Mehr Informationen auf der [[Download|Download-Seite]].
73
74
h3. Schritt 2 - Eine leere Datenbank erstellen und einen Benutzer zuweisen
75
76
Nach den folgenden Anweisungen heißt der Datenbankbenutzer von Redmine @redmine@, jedoch kann der Name auch geändert werden.
77
78
h4. MySQL
79
80
<pre><code class="sql">
81
CREATE DATABASE redmine CHARACTER SET utf8;
82
CREATE USER 'redmine'@'localhost' IDENTIFIED BY 'my_password';
83
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost';
84
</code></pre>
85
86
Für MySQL-Versionen vor 5.0.2 die Anweisung 'CREATE USER' ersetzen durch:
87
88
<pre><code class="sql">
89
GRANT ALL PRIVILEGES ON redmine.* TO 'redmine'@'localhost' IDENTIFIED BY 'my_password';
90
</code></pre>
91
92
h4. PostgreSQL
93
94
<pre><code class="sql">
95
CREATE ROLE redmine LOGIN ENCRYPTED PASSWORD 'my_password' NOINHERIT VALID UNTIL 'infinity';
96
CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;
97
</code></pre>
98
99
h4. SQL Server
100
101
Die Datenbank, das Login und der Benutzer können im _SQL Server Management Studio_ mit ein paar Klicks erstellt werden.
102
103
Hier aber auch ein Beispiel auf der der Kommandozeile mit @SQLCMD@:
104
105 8 Robert Schneider
{{collapse(Zeige SQL,Verberge SQL)
106 7 Robert Schneider
<pre><code class="sql">
107
USE [master]
108
GO
109
110 8 Robert Schneider
-- Simples Erzeugen einer DB
111 7 Robert Schneider
CREATE DATABASE [REDMINE]
112
GO
113
114
-- Anlegen eines Logins mit Benutzer/Passwort-Authentifizierung, ohne Ablauf des Passworts
115
CREATE LOGIN [REDMINE] WITH PASSWORD=N'redminepassword', DEFAULT_DATABASE=[REDMINE], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
116
GO
117
118
-- Erzeugung des Benutzers für das zuvor angelegte Login
119
USE [REDMINE]
120
GO
121
CREATE USER [REDMINE] FOR LOGIN [REDMINE]
122
GO
123
124
-- Benutzerberechtigungen mit Rollen
125
EXEC sp_addrolemember N'db_datareader', N'REDMINE'
126
GO
127
EXEC sp_addrolemember N'db_datawriter', N'REDMINE'
128
GO
129
</code></pre>
130
}}
131 9 Robert Schneider
132
h3. Schritt 3 - Konfiguration der Datenbankverbindung
133
134
Um die Datenbankverbindung für den Produktiveinsatz zu konfigurieren wird @config/database.yml.example@ nach @config/database.yml@ kopiert und wie folgt bearbeitet.
135
136
Beispiel für eine MySQL-Datenbank unter Verwendung von Ruby 1.8 oder jRuby:
137
138
<pre><code class="yml">
139
production:
140
  adapter: mysql
141
  database: redmine
142
  host: localhost
143
  username: redmine
144
  password: my_password
145
</code></pre>
146
147
Beispiel für eine MySQL-Datenbank unter Verwendung von Ruby 1.9 (@adapter@ muss auf @mysql2@ gesetzt werden):
148
149
<pre><code class="yml">
150
production:
151
  adapter: mysql2
152
  database: redmine
153
  host: localhost
154
  username: redmine
155
  password: my_password
156
</code></pre>
157
158
Diese Konfiguration ist zu verwenden, falls der Server nicht auf dem Standardport (3306) horcht:
159
160
<pre><code class="yml">
161
production:
162
  adapter: mysql
163
  database: redmine
164
  host: localhost
165
  port: 3307
166
  username: redmine
167
  password: my_password
168
</code></pre>
169
170
Beispiel für eine PostgreSQL-Datenbank (mit dem Standardport):
171
172
<pre><code class="yml">
173
production:
174
  adapter: postgresql
175
  database: <your_database_name>
176
  host: <postgres_host>
177
  username: <postgres_user>
178
  password: <postgres_user_password>
179
  encoding: utf8
180
  schema_search_path: <database_schema> (default - public)
181
</code></pre>
182
183
Beispiel für eine SQL-Server-Datenbank (mit Standard-Host @localhost@ und Standardport 1433):
184
185
<pre><code class="yml">
186
production:
187
  adapter: sqlserver
188
  database: redmine
189
  username: redmine # sollte dem Datenbankbenutzer entsprechen
190
  password: redminepassword # sollte dem Login-Passwort entsprechen
191
</code></pre>
192 10 Robert Schneider
193 13 Robert Schneider
h3. Schritt 4 - Installation der Abhängigkeiten
194 10 Robert Schneider
195
Um die gem-Abhängigkeiten zu verwalten, verwendet Redmine "Bundler":http://gembundler.com/.
196
197
Zuerst muss Bundler installiert werden: 	
198
199
  gem install bundler
200
201
Dann können alle von Redmine benötigten gems mit folgenden Kommando installiert werden:
202
203
  bundle install --without development test
204
205
h4. Optionale Abhängigkeiten
206
207
h5. RMagick 
208
209 31 Robert Schneider
RMagick ermöglicht die Verwendung von ImageMagick, welches wiederum erlaubt Bilder für die Erzeugung von PDFs, und für den PNG-Export generieren zu lassen.
210 1 Robert Schneider
211 31 Robert Schneider
Falls ImageMagick auf dem System nicht installiert ist, so sollte die Installation des RMagick Gem ausgelassen werden:
212 11 Robert Schneider
213 1 Robert Schneider
  bundle install --without development test rmagick
214 11 Robert Schneider
215 31 Robert Schneider
Falls es bei der Installation von RMagick unter Windows zu Problemen kommt, sind weitere Informationen in diesem [[HowTo_install_rmagick_gem_on_Windows|HowTo]] zu finden.
216 11 Robert Schneider
217
h5. Datenbankadapter
218
219
Redmine installiert automatisch die Adapter-Gems, die von Datenbankkonfiguration benötigt werden, in dem es die Datei @config/database.yml@ ausliest.
220
221
@bundle install --without development test ...@ ist jedes Mal auszuführen, wenn in der Datei @config/database.yml@ Adapter hinzugefügt oder entfernt worden sind. Dies sollte nicht vergessen werden.
222 12 Robert Schneider
223
h4. Weitere Abhängigkeiten (Gemfile.local)
224
225
Wenn Gems geladen werden müssen, die nicht vom Redmine-Core benötigt werden (z.B. Puma, fcgi), so kann eine Datei @Gemfile.local@ im Root-Verzeichnis des Redmine-Verzeichnisses erstellt werden. Sie wird automatisch geladen, sobald @bundle install@ ausgeführt wird.
226
227
Beispiel:
228
229 15 Robert Schneider
<pre>
230
# Gemfile.local
231
gem 'puma'
232
</pre>
233 12 Robert Schneider
234
h3. Schritt 5 - Erzeugen des Session Store Secrets
235 16 Robert Schneider
236
Dieser Schritt erzeugt einen zufälligen Schlüssel, der von Rails verwendet wird, um Session-Daten zu verschlüsseln, die in einem Cookie gespeichert werden, sodass Manipulationen verhindert werden.
237
238
Das Erzeugen eines neuen Secret Tokens macht nach einem Neustart alle bestehenden Sesssions ungültig.
239
240
* mit Redmine 1.4.x:
241
242
<pre>
243
  bundle exec rake generate_session_store
244
</pre>
245
246
* mit Redmine 2.x
247
248
<pre>
249
bundle exec rake generate_secret_token
250
</pre>
251
252
Alternativ kann das Secret auch in @config/secrets.yml@ gespeichert werden:
253
http://guides.rubyonrails.org/upgrading_ruby_on_rails.html#config-secrets-yml
254
255
h3. Schritt 6 - Anlegen der Datenbankstruktur und -daten
256
257
Mit dem Ausführen der folgende Anweisung im Root-Verzeichnis von Redmine wird die Datenbankstruktur angelegt:
258
259
  RAILS_ENV=production bundle exec rake db:migrate
260
261
Syntax unter Windows:
262
263
  set RAILS_ENV=production
264
bundle exec rake db:migrate
265
266
Damit werden nacheinander alle Migrationen durchgeführt - was die Tabellen, eine Reihe von Berechtigungen und das Administrator-Konto erzeugt.
267
268
+Problemlösung für Ubuntu+
269
270
Falls unter Ubuntu dieser Fehler entsteht:
271
272
<pre>
273
Rake aborted!
274
no such file to load -- net/https
275
</pre>
276
277
dann ist es erforderlich @libopenssl-ruby1.8@ mittels @apt-get install libopenssl-ruby1.8@ zu installieren.
278
279 17 Robert Schneider
h3. Schritt 7 - Grunddaten in die Datenbank einfügen
280
281
Mit folgender Anweisung werden die Daten der Grundkonfiguration in die Datenbank hinzugefügt:
282
283
  RAILS_ENV=production bundle exec rake redmine:load_default_data
284
285
Redmine fragt dabei nach der Sprache für die Daten, die beim Hinzufügen verwendet werden soll. Das Setzen der Umgebungsvariable @REDMINE_LANG@ vor dem Ausführen der Anweisung ermöglicht hingegen den Silent-Modus, so dass keine Nachfrage mehr stattfindet, da die Sprache nun aus der Variablen gelesen wird.
286
287
Beispiel für unixoide Systeme:
288
289
  RAILS_ENV=production REDMINE_LANG=fr bundle exec rake redmine:load_default_data
290
291
Beispiel für Windows:
292
293
<pre>
294
set RAILS_ENV=production
295
set REDMINE_LANG=fr
296
bundle exec rake redmine:load_default_data
297
</pre>
298 18 Robert Schneider
299
h3. Schritt 8 - Berechtigungen im Dateisystem
300
301
_Hinweis: Windows-Benutzer können diesen Abschnitt überspringen._
302
303
Der Benutzer, mit dem die Anwendung ausgeführt wird, muss die Berechtigung zum Schreiben in folgende Subverzeichnisse haben:
304
305
# @files@ (Speicherort für Anhänge)
306
# @log@ (Log-Datei der Anwendung @production.log@)
307
# @tmp@ and @tmp/pdf@ (Verzeichnisse sind anzulegen, falls sie noch nicht existieren; wird unter anderem auch für das Erstellen von PDFs verwendet)
308
# @public/plugin_assets@ (Assets der Plugins)
309
310
Beispiel - davon ausgehend, die Anwendung wird mit einem Benutzer @redmine@ betrieben:
311
312
<pre>
313
mkdir -p tmp tmp/pdf public/plugin_assets
314
sudo chown -R redmine:redmine files log tmp public/plugin_assets
315
sudo chmod -R 755 files log tmp public/plugin_assets
316
</pre>
317
318
h3. Schritt 9 - Die Installation testen
319
320 19 Robert Schneider
Die Installation kann mit dem Ausführen des WEBrick-Webserver ausprobiert werden:
321 18 Robert Schneider
322
* mit Redmine 1.4.x:
323
324
<pre>bundle exec ruby script/server webrick -e production</pre>
325
326
* mit Redmine 2.x:
327
328
<pre>bundle exec ruby script/rails server webrick -e production</pre>
329
330
* mit Redmine 3.x:
331
332
<pre>bundle exec rails server webrick -e production</pre>
333
334
Wenn WEBrick gestartet wurde, kann im Browser http://localhost:3000/ (oder eine andere Domain, mit Port 3000) aufgerufen werden. Es sollte dann die Willkommensseite von Redmine erscheinen.
335
336 19 Robert Schneider
> Hinweis: WEBrick ist nicht für den Produktiveinsatz geeignet. WEBrick sollte nur zum Überprüfen der Installation verwendet werden, um zu sehen, ob soweit alles funktioniert. Es kann aber einer der zahlreichen Anleitungen in diesem Wiki verwendet werden, um Redmine mit Passenger (vormals @mod_rails@), FCGI oder einem Rack-Server (Unicorn, Thin, Puma, hellip) zu betreiben.
337 18 Robert Schneider
338
h3. Schritt 10 - In die Anwendung einloggen
339
340
Zum Einloggen wird der Administrator-Zugang verwendet:
341
342
* Mitgliedsname: admin
343
* Passwort: admin
344
345 1 Robert Schneider
Die meisten Einstellungen können nun vorgenommen werden indem man im Menü zur @Administration@ und dort in den Bereich @Konfiguration@ geht.
346 20 Robert Schneider
347
h2. Konfiguration
348
349 21 Robert Schneider
Die Redmine-Einstellungen werden in einer Datei namens @config/configuration.yml@ gespeichert.
350 20 Robert Schneider
351
Wenn andere Werte als die Standardeinstellungen verwendet werden sollen, so muss lediglich @config/configuration.yml.example@ nach @config/configuration.yml@ kopiert und angepasst werden. Die Datei enthält Dokumentation in Form von Kommentaren und ist daher selbsterklärend.
352
353
Diese Einstellungen können auch durch die Umgebungsvariablen für Rails vorgenommen werden (@production/development/test@).
354 1 Robert Schneider
355 21 Robert Schneider
+Wichtig+: die Anwendung muss nach jeder Änderung neu gestartet werden.
356
357
h3. Email/SMTP-Servereinstellungen
358
359
Die Email-Konfiguration wird auf einer [[EmailConfiguration|separaten Seite]] erklärt.
360
361
h3. SCM-Einstellungen
362
363
Dieser Abschnitt ermöglicht:
364
365
* das Überschreiben der Standardanweisungsnamen, falls die SCM-Binärdateien in der PATH-Variablen nicht die üblichen Namen verwenden
366
* das Festlegen des kompletten Pfads zu den SCM-Binärdateien
367
368
Beispiele (mit Subversion):
369
370
Überschreiben des Anweisungsnamen:
371
372
  scm_subversion_command: "svn_replacement.exe"
373
374
Setzen des Pfades:
375
376
  scm_subversion_command: "C:\Program Files\Subversion\bin\svn.exe"
377
378
h3. Speichereinstellungen für Anhänge
379
380
Mit der Einstellung @attachments_storage_path@ kann das Verzeichnis für den Ort, wohin Anhänge gespeichert werden, vom Standard @files@ auf einen anderen geändert werden. 
381
382
Beispiele:
383
384
  attachments_storage_path: /var/redmine/files
385
386
  attachments_storage_path: D:/redmine/files
387
388
h2. Konfiguration des Loggings
389 22 Robert Schneider
390
Standardmäßig verwendet Redmine beim Schreiben in das @log@-Verzeichnis das Log-Level @:info@. Abhängig von der Verwendungsintensität der Anwendung kann dies eine umfangreiche Menge an Daten bedeuten. Um dabei ein uferloses Wachsen der Log-Datei zu vermeiden, sollte eine Rotation der Log-Datei erwogen werden - entweder durch System-Tools wie @logrotate@ oder durch Einstellungen in der Datei @config/additional_environment.rb@.
391
392
Um die zweite Möglichkeit zu verwenden, wird die @config/additional_environment.rb.example@ nach @config/additional_environment.rb@ kopiert und folgende Zeilen hinzugefügt. Zu beachten ist dabei, dass der nun verwendete Logger standardmäßig auf ein hohes Log-Level eingestellt ist, und dass daher dieser explizit auf @info@ gesetzt werden muss.
393
394
<pre><code class="ruby">
395
#Logger.new(PATH,NUM_FILES_TO_ROTATE,FILE_SIZE)
396
config.logger = Logger.new('/path/to/logfile.log', 2, 1000000)
397
config.logger.level = Logger::INFO
398
</code></pre>
399
400
h2. Sicherungen
401
402
Redmine-Sicherungen sollten enthalten:
403
404
* Daten (in der Redmine-Datenbank gespeichert)
405
* Anhänge (standardmäßig im @files@-Verzeichnis des Redmine-Installationsverzeichnisses enthalten)
406
407
Im folgenden ist ein einfaches Shell-Skript, das für die tägliche Sicherung verwendet werden kann (mit der Annahmen, dass eine MySQL-Datenbank verwendet wird):
408
409 26 Robert Schneider
<pre>
410 22 Robert Schneider
# Datenbank
411
/usr/bin/mysqldump -u <username> -p<password> <redmine_database> | gzip > /path/to/backup/db/redmine_`date +%y_%m_%d`.gz
412
413
# Anhänge
414
rsync -a /path/to/redmine/files /path/to/backup/files
415 26 Robert Schneider
</pre>
416 22 Robert Schneider
417
h2. Hinweise zur Installation unter Linux/Unix
418
419 23 Robert Schneider
Falls während der Installation seltsame Probleme auftreten, so sollte sichergestellt werden, dass sicherheitsüberwachende Tools ausgeschaltet sind. So etwas passiert häufig ohne Fehlermeldungen oder anderem Feedback und kann durch Tools wie Erweiterte ACLs, SELinux oder AppArmor verursacht werden. Jene Tools werden meistens in größeren Firmen mit strengen Sicherheitsrichtlinien verwendet. Die Einstellungen von Standard-Linux- oder Unix-Distributionen sollten aber keine Probleme verursachen.
420 22 Robert Schneider
421
h2. Hinweise zur Installation unter Windows
422
423 24 Robert Schneider
Unter http://rubyinstaller.org gibt es einen vorgefertigtes Installationsprogramm für den Ruby-MRI (Matz' Ruby-Interpreter).
424
Nach dessen Installation ist _Start Command Prompt with Ruby_ im Startmenü auszuwählen.
425
426
+Setzen der @RAILS_ENV@-Variable:+
427
428
Beim Ausführen von Anweisungen, wie sie in dieser Anleitung beschrieben sind, muss die @RAILS_ENV@-Variable mit einer anderen Anweisung zuvor gesetzt werden.
429
430
D.h. Anweisungen mit der Syntax folgender Art:
431
432
<pre>
433
RAILS_ENV=production <irgendeine Anweisung>
434
<irgendeine Anweisung> RAILS_ENV=production
435
</pre>
436
437
müssen in zwei aufeinanderfolgende Anweisungen zerlegt werden:
438
439
<pre>
440
set RAILS_ENV=production
441
<any commmand>
442
</pre>
443
444
+Probleme bei der Installation des MySQL-Gem+
445
446
Es kann nötig sein, das MySQL-Gem manuell mit folgender Anweisung zu installieren:
447
448
  gem install mysql
449
450
Und in manchen Fällen ist es erforderlich @libmysql.dll@ in das @ruby/bin@-Verzeichnis zu kopieren.
451
Nicht alle @libmysql.dll@-Dateien scheinen fehlerfrei zu sein, jedoch sollte diese Datei funktionieren: http://instantrails.rubyforge.org/svn/trunk/InstantRails-win/InstantRails/mysql/bin/libmySQL.dll.
452
453
*Wichtiger Hinweis für Windows 7 und höher*
454
455 25 Robert Schneider
Unter Window 7 und höher ist @localhost@ in der hosts-Datei auskommentiert[1] und es wird standardmäßig IPv6 verwendet[2]. Da das mysql2-Gem IPv6-Adressen nicht unterstützt[3], kann keine Verbindung aufgebaut werden und es tritt der Fehler @"Can't connect to MySQL server on 'localhost' (10061)"@ auf.
456
457
Dies lässt sich überprüfen indem @localhost@ gepingt wird: wenn @"::1:"@ gepingt wird, so ist IPv6 in Verwendung.
458
459
+Workaround:+
460
461
@localhost@ mit @127.0.0.1@ in @database.yml@ ersetzen.
462
463
fn1. http://serverfault.com/questions/4689/windows-7-localhost-name-resolution-is-handled-within-dns-itself-why
464
465
fn2. http://www.victor-ratajczyk.com/post/2012/02/25/mysql-fails-to-resolve-localhost-disable-ipv6-on-windows.aspx
466
467
fn3. https://github.com/brianmario/mysql2/issues/279
468
469 22 Robert Schneider
470
471
h2. Alternative zur manuellen Installation
472
473
Einige Nutzer verzichten lieber auf die manuelle Installation, indem sie einer der [[Download#Third-party-Redmine-bundles|Redmine-Pakete]] von Drittanbietern verwenden, die auf der Download-Seite aufgelistet sind.