====== Update der Installation ======

Jedes SoSci Survey Installationspaket ist zugleich ein Update-Paket. Sofern noch nicht geschehen, laden Sie sich das aktuelle Installationspaket im [[https://www.soscisurvey.de/download/|Download-Portal]] herunter. Für den Download benötigen Sie Ihre Lizenzdaten (Kennwort).

Nach dem Update kann man SoSci Survey wie gewohnt aufrufen, in der Navigation links wird die neue Versionsnummer angezeigt.

===== 1. Server sperren =====

Während des Updates sind Programm, Datenbank und ggf. Cache untereinander nicht konsistent. Während des Updates, kann SoSci Survey daher weder für die Projektverwaltung noch zum Ausfüllen von Fragebögen verwendet werden. Die Nutzer erhalten sonst u.U. Fehlermeldungen, die auch in den Logdateien (system/logfiles) gelistet werden. Mitunter kann die Arbeit während des Updates auch zu Datenverlust führen.

Um solche Probleme zu vermeiden, sollte der Server für das Update zunächst gesperrt werden.

**Server-Verwaltung** -> **Server-Wartung** -> **Server sperren**

===== 2. Schreibcache auflösen =====

**Hinweis:** Wenn Sie bisher Version 2.4.00 oder neuer eingesetzt haben, wird der Schreibcache beim Sperren des Servers automatisch aufgelöst. Sie können diesen Schritt in diesem Fall überspringen.

Sofern Sie den Schreibcache aktiviert haben (**Server-Verwaltung** -> **Server-Einstellungen** -> //Schreibcache//), lassen Sie die Cache-Inhalte vor dem Update in die Datenbank übertragen. Dies ist wichtig, weil sich beim Update das Dateiformat im Cache ändern kann.

**Server-Verwaltung** -> **Server-Wartung** -> **Cache schreiben**

===== 3. Backup erstellen =====

Grundsätzlich ist es vor einem Update immer sinnvoll, ein Backup des Dateisystems __und__ der Datenbank zu erstellen. Falls es zu unvorhergesehenen Problemen kommt, kann so schnell wieder der Ausgangszustand hergestellt werden.

Wenn Sie Linux und eine MySQL-Datenbank verwenden, können Sie folgendes Bash-Script verwenden, um Backups zu erstellen. Die Dateipfade sowie Datenbankname und -passwort müssen Sie selbstverständlich an Ihre Installation anpassen. Damit die Datei ausgeführt werden kann, muss mit ''chmod'' nach dem Speichern noch das //execute// Flag für das Script gesetzt werden.

<file bash backup4update.sh>
#!/bin/sh

#Einstellungen für das Backup
pathSOSCI=/var/www/html/sosci
pathBACKUP=/var/www/backup
dbDatabase=sosci
dbUser=survey
dbPass=PASSWORD

#Zeitstempel für den Dateinamen
datetime=`date +%Y-%m-%d_%H-%M-%S`

#Backup Dateisystem
tar --exclude=$pathSOSCI/system/session --exclude=$pathSOSCI/system/cache -czf $pathBACKUP/sosci-html-$datetime.tar.gz $pathSOSCI

#Backup MySQL-Datenbank
mysqldump -u$dbUser -p$dbPass -q --databases $dbDatabase | gzip -9 > $pathBACKUP/sosci-database-$datetime.sql.gz
</file>

===== 4. Programm aktualisieren =====

Entpacken Sie das Installationspaket in ein Verzeichnis auf dem lokalen Computer (nicht direkt in das SoSci Survey Installationsverzeichnis). Ersetzen Sie die folgenden Verzeichnisse im SoSci Survey Installationsverzeichnis durch die neuen Dateien aus dem Update-Paket:

  * ''/admin''
  * ''/help''
  * ''/images''
  * ''/inc''
  * ''/layout''
  * ''/lib''
  * ''/modules''
  * ''/script''
  * ''/templates''
  * ''/spellcheck.php'' (Datei)

Kopieren Sie nur Dateien, löschen Sie aber nichts aus:

  * ''/plugins'' -- Hier können Dateien liegen, die im Update nicht (mehr) enthalten sind. Löschen Sie daher keine Dateien aus diesem Verzeichnis.

Kopieren Sie __keine__ Dateien folgender Verzeichnisse:

  * ''/system'' -- Dieses Verzeichnis enthält die Konfiguration der Installation und darf beim Update nicht verändert werden.
  * Alle anderen Verzeichnisse: Die (mitunter zahlreichen) Projektverzeichnisse dürfen nicht verändert oder gelöscht werden, sonst sind laufende Projekte nach dem Update u.U. nicht mehr verfügbar. Unter **Server-Verwaltung** -> **Server-Wartung** -> **Verzeichnisse** können Sie bei Interesse überprüfen, ob es möglicherweise verwaiste Verzeichnisse auf dem Server gibt.

Die Dateien im Hauptverzeichnis sind optional, sie steuern was beim Aufruf des Verzeichnisses im Browser angezeigt wird (index.html), wie Suchmaschinen die Installation behandeln (robots.txt) und welches Symbol in der Tableiste des Browser angezeigt wird (favicon.ico). Diese Dateien können nach Bedarf angepasst oder ausgetauscht werden. Falls Sie keine Modifikationen an diesen Dateien vorgenommen haben, können Sie sie im Rahmen des Updates aktualisieren.

**Hinweis:** Zum Hochladen der neuen Dateien benötigen Sie, wie schon bei der Installation, ein FTP-Programm (z.B. [[http://filezilla-project.org/|FileZilla]]) oder eine andere Möglichkeit, Dateien auf den Webserver zu kopieren. Ein Update direkt aus SoSci Survey heraus ist derzeit nicht möglich.

===== 5. Datenbank aktualisieren =====

Nach dem Update der Dateien sollte immer die Installations-Routine (admin/install.php) aufgerufen werden. Diese kümmert sich um Aktualisierungen der Datenbank und gibt ggf. Hinweise auf mögliche Probleme.

**Tipp:** Wenn Sie den Server gesperrt haben, wird auf der entsprechenden Seite (ab Version 2.4.00) direkt ein Aufruf der //Server Installationsroutine// angeboten.

Rufen Sie im Internetbrowser die URL **%%http://www.domain.tld/sosci/admin/install.php%%** auf. Bitte passen Sie in der URL die Domain und das SoSci Survey Verzeichnis entsprechend Ihrer Installation an.

Nach Abschluss der Installation wird die Sperrung des Servers automatisch aufgehoben.