[MYSQL] DB sichern

Hi Leutz,

1) also für alle die CronJobs wollen aber kein Hoster haben der das erlaubt:
Hier mein persönlicher Tipp: http://www.webcron.org
Da werden Cronjobs für lau, angeboten,
also viel Spaß damit ;)

2) zu dem Script:
Da fehlt das mysql_connect
ändert mal folgendes:
das
PHP:
echo "<tr><td>$db_name</td>";

$database = $db_name;
$zaehler = 0;
$file_name = $path.$database."_".date("Y-m-d_H-i").".sql";

$text  = "# --------------------------------------------------------\r\n";
gegen
PHP:
echo "<tr><td>$db_name</td>";

$database = $db_name;
$zaehler = 0;
$file_name = $path.$database."_".date("Y-m-d_H-i").".sql";

$con_link = @mysql_connect($db_host,$db_user,$db_pw);
@mysql_select_db($db_name,$con_link);

$text  = "# --------------------------------------------------------\r\n";

und das
PHP:
Verzeichniss /".$path."<BR>";
?>
gegen
PHP:
Verzeichniss /".$path."<BR>";
@mysql_close($con_link);
?>

jezze müste es funktionieren :)


Grtz MrF

P.S.: was wäret ihr ohne mich? :P
 
Zuletzt bearbeitet:
unset()

Ein freundliches Hallo an alle

Ich habe im Internet nach einer Möglichkeit gesucht meine Datenbank bequem über ein PHP-Script zu sichern.
Dabei bin ich auf diesen thread gestossen.

Ich konnte dieses Beispiel von novara hier eigentlich auch erfolgreich umsetzen habe auch die Änderungen von Mr. FISHMAN vollzogen.

Jetzt stellt sich mir jedoch ein Problem welches ich nicht zu lösen vermag.

Ich bekomme nämlich die Fehlermeldung

Notice: Undefined variable: def in d:\homepage\beratercenter\newsletter\backup.php on line xxx

Notice: Undefined variable: data in d:\homepage\beratercenter\newsletter\backup.php on line xxx

Die Fehlermeldung ist eigentlich auch logisch da ja durch das unset() die Variable jeweils wieder feigegeben wird.

Zwar funktioniert das Ganze aber die Fehlermeldungen stören mich.
Wie kann ich dieses Problem nun lösen?

die Variable vorher zu setzen und das error_reporting auf 0 zu setzen hilft nicht.

Über jede Antwort die mir weiterhelfen könnte freue ich mich.

Nachtrag: habe noch den Versand der erstellten sql-Datei mit eingebaut so muß ich zwar manuell an die Sache auslösen aber zumindest kann ich so auf einfachem Wege die Datenbank sichern
 
Funktionier über Umwege

Danke dir Mr. Fishman

Es hat funktioniert allerdings auf diesem Wege

anstatt
unset($def,$index); und unset($data);
setze
$def="";
unset($index);
$data="";

mit dem Vorschlag @unset(....); ging es garnicht

Soweit so gut

Nun ist mir aber nicht so klar warum das so ist.
dh ich möchte es auch verstehen warum die Lösung gerade hier liegt.
Könntest du mir erklären warum?

Damit ich eventuell beim nächstenmal von allein auf die Lösung stoße.

Mit freundlichen Grüßen und dankend im voraus

andreasV
 
Hi,
es ist ja so das beim nächsten Arbeiten mit der Variable
$data.="blabla"; (ich mach es mal an $data)
etwas an den vorhandenen Inhalt angehängt wird. (.= und nicht =)
Da du aber mit unset($data) die Variable sozusagen "löschst" und nicht
den Inhalt, gibt es da Probleme.
(Fehler heißt ja auch undefiniert)
Wo nichts ist kann man nichts dran hängen kloar?
Also setzt du der Variable einen Inhalt, auch wenn es 'leer' ist - ist es immerhin etwas. Somit kann man dann wieder etwas dran hängen

Hoffe das es so verständlich ist

Grtz MrF
 
hallo leute,

ich will auch die datenbank über ein php-script sichern, das script ist soweit i.o., es ist blos ein problem aufgetreten. die datenbank umfasst ca. 50 mb und leider backupt das script nur c.a. bis zu hälfte... d.h. das ich ein nicht abgeschlossenes backup habe.

folgende fehlermeldung bekomme ich.

Warning: Variable passed to each() is not an array or object in /www/htdocs/*****/*****.php on line 150

wäre nett wenn mir jm bei dem problem helfen könnte.

mfg Morget.
 
Hallo,

also er macht den Backup wahrscheinlich korrekt, gibt aber eine Fehlermeldung aus:

Warning: Variable passed to each() is not an array or object in
/kunden/db-sicherung.php on line 76

Was hat das damit auf sich ?

PS: die Datenbank die er sichert, ist grösser als wenn ich
sie per MyPHPadmin sicher, woran kann das liegen ?

Es sind genausoviele Tabellen usw, nur ist es mit dem Script alles grösser.
Danke
 
Hallo vsitor.

Hast Du mittlerweile eine Lösung für Dein Problem? Habe leider ähnliches Problem mit dem an sich wohl guten Script.
Code:
Warning: Variable passed to each() is not an array or object in /home/htdocs/web3/html/SQLBackup/backup.php on line 78

Fatal error: Maximum execution time of 30 seconds exceeded in /home/htdocs/web3/html/SQLBackup/backup.php on line 116

Eine Erweiterung um eine gzip-Funktion und die Fähigkeit mehrere Datenbanken abzuarbeiten wäre auch nicht schlecht....

@voodoo: Auch wenn der Thread alt ist, zeigt es doch, dass wir nicht planlos neue Threads eröffnen, wenn ein Thema schon mal behandelt wurde :) .
 
Zurück