|
|
|
|
|
|
|||||||
| PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen |
|
|
|
LinkBack | Themen-Optionen | Thema bewerten |
|
|
#1 (permalink) | ||
|
Gast
Beiträge: n/a
|
Hallo,
ich will einen mysqldump automatisch über ein Webinterface durchführen. Der Testrechner läuft unter Windows. Der produktive Server unter Linux. Dazu wollte ich folgenden Code verwenden: Code:
$befehl='c:/mysql/bin/mysqldump.exe -u'.$MySQL_User.' -p'.$MySQL_Passw.' -h localhost fws > '.$sicpfad.'/fwsdump.sql';
echo $befehl."
";
system($befehl,$fp1);
if ($fp1 != 0)
{
echo "Datenbank konnte nicht exportiert werden $fp1";
}
Wenn ich den kompletten Befehl den ich per echo ausgegeben habe mittels Cut&Paste in ein Befehlszeilenfenster reinkopiere, dann wird der Dump problemlos erstellt. Sowohl unter Windows, als auch über PuTTY-Fenster direkt auf dem Server. Womit der mysqldump wohl korrekt ist. Was mache ich denn hier falsch ? Alle Hinweise die ich im Internet gefunden haben zeigen, dass ich den Befehl einfach nur mit system() oder exec() ausführen müsste. Nachtrag: Im error_log des Apache habe ich etwas merkwürdiges gefunden: Zitat:
Das ganze läuft auf einem 1&1 Rootserver, aber wie gesagt, das gleiche Problem habe ich auch auf dem Windows-Testserver. Hier sagt er übrigens: Zitat:
Code:
c:/mysql/bin/mysqldump.exe -u".$MySQL_User." -p".$MySQL_Passw." -h localhost fws > ".$sicpfad."/fwsdump.sql Markus |
||
|
|
|
|
|
PHP Code Flüsterer
Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten
|
|
|
|
#2 (permalink) | ||
|
Gast
Beiträge: n/a
|
Hallo,
ich hab an dem Windowsrechner mit safe_mode=off erreicht, dass es nun funktioniert. Ich wollte zwar den safe_mode nicht abschalten aber die Sache mit dem safe_mode_exec_dir funktionierte leider nicht. Ich habe dort das Verzeichnis c:/mysql/bin angegeben. Trotzdem wollte er die mysqldump.exe nicht ausführen. Mit deaktiviertem safe_mode funktioniert es nun. Auf dem Linux-Server hilft leider auch das nichts. Das error_log sagt weiterhin Zitat:
system() gibt übrigens den Wert 126 zurück. Gibt es hier irgendeine Tabelle bei der man nachlesen kann, was ihm weh tut ? Wobei ich vermute, dass das auch nur dem entspricht was im error_log steht. Hier nochmal der aktuelle Code: Code:
/* $sicpfad=$MySQL_SiCoPfad.date(YmdHis);*/
$sicpfad=$MySQL_SiCoPfad."back";
if (!is_dir($sicpfad))
{
mkdir($sicpfad, 0777);
}
else
{
echo "Verzeichnis existiert schon !
";
}
// Datenbank Backup erstellen
/* $befehl='/usr/bin/mysqldump -A > '.$sicpfad.'/fwsdump.sql'; */
$befehl='/usr/bin/mysqldump -u'.$MySQL_User.' -p'.$MySQL_Passw.' -h localhost fws > '.$sicpfad.'/fwsdump.sql';
echo "Befehl: ".$befehl."
";
system($befehl,$fp1);
if ($fp1 != 0)
{
echo "Datenbank konnte nicht exportiert werden $fp1";
}
Zitat:
Vielen Dank, Markus Haupt |
||
|
|
|
#3 (permalink) |
|
Gast
Beiträge: n/a
|
Mea culpa ... ich bin mit Blindheit geschlagen.
Man sollte phpinfo doch weiter herunterlesen. Der Master-Wert von safe_mode ist off und auch das safe_mode_exec_dir ist dort /usr/bin. Der lokale Wert beinhaltet aber in safe_mode_exec_dir den Eintrag /home/www/empty. Jetzt die wahrscheinlich saublöde Frage, wie ändere ich den lokalen Wert, oder bzw. reicht es wenn ich einen SymLink von /home/www/empty auf /usr/bin/mysqldump einstelle ? Also letzteres teste ich mal aus, für ersteres vielleicht erleuchtet mich jemand. Danke, Markus |
|
|
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Wie Lizenz System umsetzen? | ghost120 | PHP-Fortgeschrittene | 5 | 20.07.2009 13:04 |
| system() flush und Safari | webbi | PHP-Fortgeschrittene | 6 | 07.07.2008 21:30 |
| exec(), Programm läuft nur als Task | Superfunk2000 | Server, Hosting und Workstations | 1 | 05.07.2008 09:14 |
| Exec() im IIS funktioniert nicht | Superfunk2000 | PHP Tipps 2008 | 24 | 04.07.2008 15:12 |
| ComputerVerwaltung / System / Ereignisanzeige | dh1sbg | PHP-Fortgeschrittene | 3 | 17.11.2006 01:42 |
| mysqldump ohne exec | sponer | Datenbanken | 5 | 27.07.2006 15:22 |
| system() - Befehle werden einfach ignoriert | sad | PHP-Fortgeschrittene | 9 | 18.04.2006 18:12 |
| Exec(), system() ~ cmd-Befehl auf Windows mit Sonderzeichen | PHP-Fortgeschrittene | 0 | 10.04.2006 14:02 | |
| Word mit exec oder system starten (apple tiger) | PHP Tipps 2007 | 0 | 26.12.2005 13:41 | |
| exec() Funktion | PHP-Fortgeschrittene | 1 | 22.08.2005 19:33 | |
| 29.07.05: System Administrator Appreciation Day!! | Off-Topic Diskussionen | 2 | 25.07.2005 09:15 | |
| unzip per exec() funktioniert leider nicht | PHP-Fortgeschrittene | 7 | 27.06.2005 15:33 | |
| Chat System Chat System | Beitragsarchiv | 3 | 21.06.2005 17:07 | |
| MySQLDUMP mit exec unter Windows (localhost) | PHP Tipps 2004 | 17 | 13.10.2004 20:46 | |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.