Kennt sich jemand gut mit PHP aus?
#6
Hallo Timo,

ich habe noch nicht aufgegeben. Wink

timo,'index.php?page=Thread&postID=220446#post220446 schrieb:Es könnte Sinn ergeben, wenn u.U. auf dem gleichen Weg auch mehrere MySQL-Datenbanken in einer tar-Datei gesichert werden. Meist wird zwar (wie schon geschrieben) erst aus den Einzeldateien eine große gemacht und die anschließend komprimiert, was den Vorteil einer geringeren Dateigröße hat (Stichwort "Solides Archiv"), aber auch der hier offenbar beschrittene umgekehrte Weg (erst alle Einzeldateien komprimieren, und dann aus allen resultierenden *.gz-Dateien ein Tar-Archiv erzeugen) kann sinnvoll sein. Wenn man nur die Sicherung einer der Datenbanken bräuchte, müsste man bei der zweiten Methode nicht (wie bei der ersten) das ganze Tar-Archiv dekomprimieren, sondern nur gezielt die eine Datei, die man braucht. Das geht (je nach Anzahl der enthaltenen Dateien) vermutlich deutlich schneller.
Richtig ist jedenfalls, wie ich mich inzwischen überzeugt habe, dass man beim Vorhandensein mehrerer MySQL-Datenbanken alle markieren und herunterladen kann. Man erhält dann eine .tar-Datei, welche alle Sicherungen im .gz-Format enthält.

Dann habe ich noch etwas über die Dateinamen nachgedacht. Zum Probieren will ich künftig in meinem Einflussbereich simple Dateinamen verwenden, also beispielsweise db.tar, db1.gz usw. Wenn alles richtig läuft, kann ich Datum und Uhrzeit in den Dateinamen aufnehmen. Weiterhin müsste bei Deinem Skript nach Erstellen der .tar-Datei noch die .gz-Datei löschen, denn sonst nimmt die unnötig Platz in Anspruch. (Expertenmodus: Es sollten nur die letzten drei Dateien aufgehoben werden. Das stelle ich erst mal zurück.) Aber: Die Dateien, die heruntergeladen werden, haben ja tatsächlich Dateinamen wie mysql_db_backup_20180522115635.tar. Also müsste die heruntergeladene Datei im ersten Schritt immer gleich heißen und dann erst bei der Komprimierung nach .tar mit Datum versehen werden - stimmt's?

Mein Script sieht ohne Datumsumwandlungen jetzt so aus:

Code:
<?php

echo "MySQL sichern ...<br />";

echo "Lade MySQL herunter ...<br />";
exec("mysqldump -u MEINDATENBANKBENUTZER -pMEINDATENBANKPASSWORT --add-drop-table MEINDATENBANKNAME >dump.sql");
echo "MySQL heruntergeladen.<br />";

echo "Erzeuge .gz-Datei ...<br />";
/* exec("gzip dump" . date('Ymd_g_i') . ".sql"); */
exec("gzip dump.sql");
echo ".gz-Datei erzeugt.<br />";

echo "Erzeuge .tar-Datei ...<br />";
/* exec("tar -cf mysql_db_backup_" . date('Ymd_g_i') . ".tar *.sql.gz"); */
exec("tar -cf dump.tar *.sql.gz");
echo ".tar-Datei erzeugt.<br />";

echo "Loesche .gz-Datei ...<br />";
/* unlink('dump.sql.gz'); */
echo ".gz-Datei geloescht.<br />";

echo "Ende.<br />";

?>
Morgen teste ich weiter. Ich wollte heute nur noch meinen aktuellen Stand melden.

Gruß, Anselm
Früher war mehr UHER. Cool Meine UHER-Erinnerungen
Zitieren


Nachrichten in diesem Thema
[Kein Betreff] - von timo - 19.05.2018, 12:32
[Kein Betreff] - von Anselm Rapp - 19.05.2018, 14:58
[Kein Betreff] - von timo - 19.05.2018, 20:24
[Kein Betreff] - von Anselm Rapp - 20.05.2018, 12:08
[Kein Betreff] - von Anselm Rapp - 22.05.2018, 15:38
[Kein Betreff] - von Anselm Rapp - 23.05.2018, 14:28
[Kein Betreff] - von Anselm Rapp - 06.06.2018, 09:27
[Kein Betreff] - von timo - 06.06.2018, 10:02
[Kein Betreff] - von Anselm Rapp - 06.06.2018, 10:46
[Kein Betreff] - von Anselm Rapp - 24.06.2018, 07:12
[Kein Betreff] - von timo - 24.06.2018, 11:15
[Kein Betreff] - von Anselm Rapp - 24.06.2018, 12:12
[Kein Betreff] - von timo - 24.06.2018, 17:15

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 4 Gast/Gäste