這個問題可能看起來是重複的,但我試過所有的例子來恢復我的數據庫,但似乎沒有任何工作。 我想運行一個腳本,將我的備份sql文件恢復到新的數據庫。我試過這些行來恢復我的數據庫,但似乎沒有工作。PHP腳本將數據庫恢復到另一個空數據庫
$mysql_host = 'localhost';
$mysql_username = 'my_username';
$mysql_password = 'somepassword';
$db_name = 'test_db';
$source = 'C:/wamp/www/my_folder/test_db.sql';
$conn = mysql_connect($mysql_host, $mysql_username, $mysql_password) or die('Error connecting to MySQL server: ' . mysql_error());
mysql_query("CREATE DATABASE $db_name", $conn) or die('Error connecting to MySQL server: ' . mysql_error());
restore_my_database($mysql_host, $mysql_username, $mysql_password, $db_name, $source);
function restore_my_database($mysql_host, $mysql_username, $mysql_password, $db_name, $source) {
exec("mysql --opt -h $mysql_host -u $mysql_username -p $mysql_password $db_name < $source");
}
我也試過在功能restore_my_database以下行
$command = "mysqldump --opt -h $mysql_host -u $mysql_username -p $mysql_password $db_name > $source";
system($command);
高達數據庫中創建,代碼工作正常,但恢復是行不通的。 任何人都可以幫我用PHP恢復代碼來恢復我的數據庫。在此先感謝
這是新代碼嗎?如果是這樣,你可能要考慮避免使用'mysql_ *'函數(它們已被棄用)。相反,請考慮使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli) - [本文](http://j.mp/QEx8IB)將幫你決定哪個。 –
「mysql」和「mysqldump」命令不在用戶執行腳本的路徑中。使用這些命令的完整路徑並重試。 –
我實際上只使用了完整路徑,就像exec(「C:/wamp/bin/mysql/mysql5.5.8/bin/mysql --opt -h $ mysql_host -u $ mysql_username -p $ mysql_password $ db_name <$資源」); – Inventillect