Ein Programm sollte nicht nur Hand und Fuß, sondern auch Herz und Hirn haben. (Michael Anton)
MFG Jörg
Muss jeder vermeintliche Programmierer ne Signatur haben ??
Meinst du manuell? Das geht direkt in phpMyAdmin bei "Exportieren". Oder du willst es automatisiert bzw. per Skript, dann musst du das Tool mysqldump via Befehlszeile aufrufen, Benutzername, Passwort und zu sichernde Datenbank(en) angeben inkl.optionaler weiterer Parameter (erweiterte Inserts, Ausgabeformate etc...). Auf welchem Betriebssystem machst du das?
Link
Hello World
Hallo, Automatisch währe ganz schön toll,
Die Datenbank liegt auf einem Synology Nas, ich Arbeite an eine Windows Station.
Wenn ich das Skript auch auf Linux ausführen könnte... ich besitze noch 4 Raspberry pi die immer laufen, so währe das Automatische Update sicherer
Hi,
Linux Befehl (den kannst du entweder direkt in der Linux Konsole (Bash) eingeben oder wenn du es in einem PHP-Skript haben willst PHP via exec("der Befehl"); ausführen. Für zeitgesteuerte / regelmäßige automatische Backups musst du dein Bash-Script in die crontab Datei eintragen. Dazu ganz unten mehr). Hier der Befehl: mysqldump --user=Datenbankbenutzer --password=PasswortDesBenutzers --host=localhost --all-databases --result-file=/var/www/wasweissich/backup.sql
du kannst die Ausgabe auch umleiten, so: [tt]mysqldump --user=Datenbankbenutzer --password=PasswortDesBenutzers --host=localhost --all-databases > /var/www/wasweissich/backup.sql[/tt]
oder du zippst sie direkt (sodass das Backup in einem Archiv vorliegt) mysqldump --user=Datenbankbenutzer --password=PasswortDesBenutzers --host=localhost --all-databases | gzip > /var/www/wasweissich/backup.sql.zip
Wenn du nur bestimmte Datenbanken sichern willst und nicht alle, dann schreibst du anstatt --all-databases einfach --databases NameDerDB1 NameDerDB2 NameDerDB3 UndSoWeiter
Du kannst Benutzername und Passwort auch anders übergeben: -u DatenbankBenutzer -pDeinPasswort (dass zwischen "-p" und dem Passwort KEIN Leerzeichen steht ist Absicht und muss so sein). Ich persönlich stehe mehr auf die oben in den Beispielen verwendete Schreibweise, aber im Endeffekt ist es egal.
Es gibt noch viele weitere Einstellungsmöglichkeiten, z.B. --default-character-set=utf8 für die Kodierung zum Beispiel. Aber da kannst du ja mal die manpage durchgehen und schauen was für dich noch relevant ist.
Weiß der Geier wie das Ganze nun unter Windows geht, aber ich glaube es geht genauso, man muss lediglich für mysqldump den Pfad mit angeben und mysqldump.exe schreiben.
Was die zeitgesteuerte Ausführung des Skripts angeht, da gibt es auf dieser Seite hier tolle Beschreibungen / Anleitungen