निर्यात डेटाबेस डंपफाइल गलत

मैं क्लिक किए जाने पर बटन के साथ एक पेज बनाने की कोशिश कर रहा हूं, sampledb नामक डेटाबेस डाउनलोड करेगा।

यहां मेरा backup.php है

<?php
ob_start();

$username = "root";
$password = "";
$hostname = "localhost";
$dbname   = "sampledb";

$command = "C:\\wamp\\bin\\mysql\\mysql5.5.24\\bin\\mysqldump --add-drop-table --host=" . $hostname . "--user=". $username ." --password=". $password." ".$dbname;
system($command);

$dump = ob_get_contents();
ob_end_clean();

// send dump file to the output
header('Content-Description: File Transfer');
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename=sqlfile.sql');
readfile('sqlfile.sql');
flush();
echo $dump;
exit();
?>

निर्यात सफल रहा था। हालांकि, जब मैंने डाउनलोड फ़ोल्डर में डाउनलोड की गई फ़ाइल (sqlfile.sql) की जांच की, तो इसका फ़ाइल आकार केवल 2kB है। मैंने phpMyAdmin का उपयोग करके sampledb को निर्यात करने का प्रयास किया और पाया कि वास्तविक फ़ाइल आकार 9 केबी है।

इसके अलावा, जब मैंने phpMyAdmin के माध्यम से sqlfile.sql आयात करने का प्रयास किया, तो मुझे एक त्रुटि संदेश मिला। यह कहता है <कोड> चेतावनी: readfile (sqlfile.sql) ।

मेरे निर्यात कोड में कुछ गड़बड़ है। कोई सुझाव?

अद्यतन 20131205

I tried appending > sqlfile.sql to this part of my code.

$ कमांड = "सी: \\ वैंप \\ बिन \\ MySQL \\ mysql5.5.24 \\ bin \\ mysqldump। --add-drop-table --host ="। $ होस्टनाम। "--उपयोगकर्ता ="। $ उपयोगकर्ता नाम। "--password ="। $ पासवर्ड। "" $ dbname;

फ़ाइल का आकार अभी भी गलत है। मैं डाउनलोड फ़ाइल को phpMyAdmin पर अपलोड नहीं कर सकता।

अंत अद्यतन

0

1 उत्तर

mysqldump needs to be dumped into a file, otherwise it just returns the results as text.

आमतौर पर यह फ़ाइल में रीडायरेक्ट करके किया जाता है:

mysqldump --... > dump.sql
0
जोड़ा