Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:webapps:moodle:moodle_sicherunskopie_erstellen]] 

Moodle Sicherunskopie erstellen

Die beschriebene Vorgehensweise sollten Sie nur durchführen, wenn Sie sich sicher sind. Tippfehler und Ungenauigkeiten können verheerende Folgen haben.

Eine Sicherungskopie von Moodle besteht aus einer Datenbanksicherung und der Sicherung von 3 Verzeichnissen, nämlich

/var/lib/moodle
/usr/share/moodle

und

/etc/moodle

Alle Arbeiten sollten als root an einer Konsole ausgeführt werden. Um mit der Kopie arbeiten zu können, müssen noch die Rechte für Postgres eingestellt werden.

Die Sicherung kann jederzeit wieder hergestellt werden, indem die Datenbank wieder hergestellt wird und die Verzeichnisse zurückkopiert werden.

Datenbank sichern

Zunächst müssen Datenbankzugriffe unterbunden werden.

/etc/init.d/apache2 stop

Anmeldung als postgres:

su postgres

Kopieren der Datenbank mit createdb:

createdb -O moodle -T moodle moodle_bak

Der Befehl erstellt die Datenbank moodle_bak als Kopie der Datenbank moodle1) für den Besitzer moodle2).

Als postgres abmelden:

Strg+d

Dadurch ist die Datenbank allerdings nur innerhalb der PostGres-Umgebung gesichert. Möchte man sie als Ganzes sichern und z.B. auf einem anderen Datenträger übertragen, gibt man als root ein:

pg_dump -U postgres moodle> moodle_pgdump

(In der Datei „moodle_pgdump“ finden sich die exportierten SQL-Statements im Textformat. Diese Datei lässt sich dann am Ende als root mit:

psql -U psql moodle < moodle_pgdump

wieder einspielen).

Dann kann Apache wieder gestartet werden.

/etc/init.d/apache2 start

Rechte einstellen

→ Diesen Punkt können Sie bei der Version 9.1 von PostgreSQL unter Linuxmuster 6.1 überspringen: Testen Sie dies mit:

cd /etc/postgresql/
ls

Steht hier ein 8.3, fahren Sie so fort, wie unten beschrieben. Bei 9.1 brauchen Sie die Rechte in der pg_hba.conf nicht anzupassen.

Ansonsten: Auf die gesicherte Datenbank kann nicht zugegriffen werden, da die Zugriffsrechte auf Datenbanken in der Datei

/etc/postgresql/8.3/main/pg_hba.conf

eingestellt werden müssen.

Suchen Sie alle Zeilen mit der Datenbank moodle und kopieren Sie diese mit neuem Datenbanknamen 3).

Datenbanksicherung wieder einspielen

Zunächst müssen Datenbankzugriffe unterbunden werden.

/etc/init.d/apache2 stop

Anmeldung als postgres:

su postgres

Dann das Verwaltungsprogramm starten:

psql

Jetzt die Datenbank moodle entfernen:

DROP DATABASE moodle;

Schließlich die Sicherungskopie wieder zurück benennen - bei PSQL 8.x:

DATABASE RENAME moodle_bak TO moodle;

- Bei PSQL 9.x:

ALTER DATABASE moodle_bak RENAME TO moodle;

Programm beenden

\q

und abmelden, sowie Apache wieder starten:

Strg+d
/etc/init.d/apache2 start

Verzeichnisse sichern

Kopiere die Verzeichnisse:

cd /etc
cp -R moodle moodle_bak
cd /var/lib
cp -R moodle moodle_bak
chown -R www-data.www-data moodle_bak
cd /usr/share
cp -R moodle moodle_bak

Verzeichnisse zurückholen

Entfernen der Verzeichnisse und zurück umbenennen der Sicherungskopien:

cd /etc
rm -r moodle
mv moodle_bak moodle
cd /var/lib
rm -r moodle
mv moodle_bak moodle
cd /usr/share
rm -r moodle
mv moodle_bak moodle
1)
template -T moodle
2)
owner -O moodle
3)
erster Eintrag in der Zeile
 [[anwenderwiki:webapps:moodle:moodle_sicherunskopie_erstellen]] anwenderwiki/webapps/moodle/moodle_sicherunskopie_erstellen.txt · Zuletzt geändert: 2015/10/13 11:15 von 127.0.0.1