Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Datenbankexport per PHP-Datei

Mitglied: 17735

17735 (Level 2)

10.07.2006, aktualisiert 23.08.2006, 5198 Aufrufe, 5 Kommentare

Hi,

ich möchte auf meiner Homepage Benutzern mit Administratorrechten die Möglichkeit geben, per Klick auf "Vollbackup" einen kompletten Export aus der MySQL-Datenbank (also alle Tabellen) vorzunehmen, der dann in einer *.sql-Datei gespeichert wird (oder an den Benutzer gesendet wird) und den Inhalt schon in der MySQL-Sprache enthält. Also gleiche Funktion wie bei PHPMyAdmin "Exportieren" der Datenbank.

Wie kann ich das am Geschicksten lösen, so dass der Code in der *.sql-Datei schon in der MySQL-Sprache verfasst ist?

Gruß,
Ahnenforscher
Mitglied: filippg
10.07.2006 um 23:56 Uhr
Hallo,

ich weiss nicht, was MySQL da alles unterstützt. Du solltest vielleicht mal in der Doku schauen, MSSQL bietet z.B. bestimmte SQL-Befehle für Massenim- und -export, kann sein das MySQL da ähnliches hat. Ansonsten bietet ja auch phpMyAdmin diese Funktionalität. Und da kannst du entweder direkt das verwenden, oder du schaust halt im Quelltext, wie es da gemacht wird (es leben OpenSource), dann kannst du das auch in eigene Anwendungen integrieren (bei direkter Kopie von Funktionen Lizenzbestimmungen beachten!).

Filipp
Bitte warten ..
Mitglied: Guenni
11.07.2006 um 15:44 Uhr
@17735

Hi,

im Homeverzeichnis des Benutzers muß ein Verzeichnis existieren mit Vollzugriff
für jeden.

Der Benutzer, der das Dump ausführt, muß in der MySQL-Datenbank ein Konto haben.

In der folg. PHP-Seite kann der Benutzer:
-seinen Namen
-sein Passwort
-die Datenbank
-den Pfad inclusive Dateinamen (z.B. /home/benutzername/dump/db.sql)

eingeben.

<?
if($cmd){
exec("mysqldump -ac --user=$user --password=$pass $db > $dump");
}
?>
<html>
<head>
<title>MySQL-Dump</title>
</head>
<body>
<form action="dump.php">
Benutzer<input type="text" name="user">
Passwort<input type="password" name="pass">
Datenbank<input type="text" name="db">
Dumpfile<input type="text" name="dump">
<input type="submit" value="Sichern" name="cmd">
</form>
</body>
</html>

Es wird eine Datei erstellt mit allen Tabellendefinitionen und Insert's.

Ist jetzt nur mal ein grober Entwurf, eleganter ist es natürlich, die Daten
und Pfadangaben in einer Datenbank zu speichern und dort beim Ausführen
des Script's auszulesen.

Gruß
Günni

PS.: Getestet im Intranet!
Bitte warten ..
Mitglied: 17735
23.08.2006 um 14:55 Uhr
Hi Günni,

lokal / im Intranet funktioniert dieses Skript bei mir nicht, keine Datei wird erzeugt oder an den Browser gesendet, obwohl Eingaben stimmen. Beim Hoster ist der Befehl "exec" aus Sicherheitsgründen deaktiviert. Gibt es eine andere Möglichkeit, ein MySQL-Dump zu erstellen?

Gruß,
Ahnenforscher
Bitte warten ..
Mitglied: Guenni
23.08.2006 um 19:52 Uhr
@17735

Hi,

warum bei dir kein Dump erzeugt wurde, kann ich jetzt aus
der Ferne nicht sagen.

Es gibt aber noch 'ne andere Möglichkeit, ohne exec o.ä..

Systemkommandos, die zwischen mit Shift + `` Taste(neben Backspace) erzeugten
Zeichen stehen, werden vom PHP-Interpreter versucht, diese auch als solche auszuführen.

Folg. Code erzeugt im Browserfenster ein Dump der angegebenen Datenbank:

<?
$output = `mysqldump -ac --user=username --password=passwort datenbank`;
echo "<pre>$output</pre>";
?>

Eine Umleitung in eine Datei…

... datenbank > /Pfad_zum_Dump/Dateiname`;

...funktioniert ebenfalls.

Und wie gesagt, das Zielverzeichnis MUSS von jedem beschreibbar sein
dürfen!

Grüße
Günni
Bitte warten ..
Mitglied: 17735
23.08.2006 um 20:24 Uhr
Nein, das funktioniert leider auch nicht: Lokal wird von XAMPP bei mir nur das <pre></pre> ausgegeben, also kein Dump, beim Dienstleister kommt die Meldung: Warning: shell_exec() has been disabled for security reasons in blabla/mysqldump.php on line 3


(Das "blabla" ist nur symbolisch für das Verzeichnis )

Gruß,
Ahnenforscher
Bitte warten ..
Ähnliche Inhalte
PHP

Schreibrechte für Datei im PHP-Skript

gelöst Frage von itebobPHP1 Kommentar

Hallo, ich habe ein PHP-Skript schreiben1.php, das in eine Datei txt123.php schreibt. Wenn schreiben1.php so ausgeführt wird h ttp://server.tld/schreiben1.php ...

PHP

PHP mail() Datei versenden

gelöst Frage von simon-niPHP3 Kommentare

Hallo Leute, ich habe ein kleines PHP Script zum versenden eines Formulars geschrieben/zusammenkopiert (bin leider PHP Anfänger). Das hat ...

JavaScript

PHP Datei im Hintergrund durchlaufen

Frage von miichiii9JavaScript2 Kommentare

Hallo Miteinander Ich möchte gerne eine Aktualisierungsfunktion auf meiner Seite erstellen. Die aktuelle Seite im Browser ist "index.php" wenn ...

HTML

PHP Datei für das ABI

Frage von mrcljnffHTML7 Kommentare

Hallo, ich habe demnächst ABI und muss hier eine Aufgabe lösen auf dich ich seit Wochen keine Antwort finde. ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 17 StundenWindows 103 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 20 StundenAdministrator.de Feedback14 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Server Hardware
Welche Rolle spielt Design bei Enterprise IT Hardware?
Frage von ApolloXServer Hardware17 Kommentare

Ich arbeite für einen internationalen Elektronikhersteller in der Forschung und meine Aufgabe ist es, Feedback von Nutzern in Hinsicht ...

Windows Network
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Network15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Memory Cards
Vergessliche USB-Sticks?
Frage von hanheikMemory Cards14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...