基本上我需要做的是使用PHP以純文本轉儲SQL數據庫。就像phpMyAdmin在您選擇不導出文件時一樣。使用PHP以純文本轉儲SQL使用PHP
這樣我可以通過郵件發送它,稍後使用SQL查詢重新插入它。
這甚至可能嗎?
謝謝。
基本上我需要做的是使用PHP以純文本轉儲SQL數據庫。就像phpMyAdmin在您選擇不導出文件時一樣。使用PHP以純文本轉儲SQL使用PHP
這樣我可以通過郵件發送它,稍後使用SQL查詢重新插入它。
這甚至可能嗎?
謝謝。
希望它可以幫助
<?php
$dbhost = "HOSTNAME";
$dbuser = "USERNAME";
$dbpwd = "PASSWORD";
$dbname = "DATABASENAME";
$dumpfile = $dbname . "_" . date("Y-m-d_H-i-s") . ".sql";
passthru("/usr/bin/mysqldump --opt --host=$dbhost --user=$dbuser
--password=$dbpwd $dbname > $dumpfile");
// report - disable with // if not needed
// must look like "-- Dump completed on ..."
echo "$dumpfile "; passthru("tail -1 $dumpfile");
?>
像這既是可能的,也是非常簡單的。以這種方式「轉儲」SQL數據與查詢和編寫查詢沒有任何區別。如果你在linux服務器上運行,我建議你只使用mysqldump
,因爲它是專門爲此設計的。你可以完全放棄php,但如果你想要的話,你甚至可以使用類似exec
這樣的命令從php運行mysqldump
命令,並且仍然用php通過電子郵件發送結果。
試試這個
define("SITE_DB_USERNAME", "$db_user");
define("SITE_DB_PASSWORD", "$db_pass");
define("SITE_DB_NAME", "$db");
system(" mysql -u".SITE_DB_USERNAME." -p".SITE_DB_PASSWORD." -hlocalhost ".SITE_DB_NAME." > file.txt);
感謝