gpt4 book ai didi

php - 恢复一个mysql数据库备份?

转载 作者:太空宇宙 更新时间:2023-11-03 11:10:12 25 4
gpt4 key购买 nike

我正在使用这个命令来备份 MySql 数据库:

public function backup() {
$backup = $this->location.'/'.$this->database.'_backup_'.date('Y').'_'.date('m').'_'.date('d').'.sql';
$cmd = "c:/xampp/mysql/bin/mysqldump --opt -h localhost -u root $this->database > $backup";
try {
system($cmd);
$error = false;
$message['error'] = false;
$message['message'] = 'Backup successfuly complete';
return json_encode($message);
} catch(PDOException $e) {

$error = true;
$message['error'] = true;
$message['message'] = $e->getMessage();;
return json_encode($message);
}
}

以上工作正常,数据库备份没有任何问题。这是恢复备份的命令:

public function restore($backup) {
$cmd = "c:/xampp/mysql/bin/mysql -h localhost -u root $this->database > $backup";
try {
exec($cmd);
$error = false;
$message['error'] = false;
$message['message'] = 'Restore successfuly complete';
return json_encode($message);
} catch(PDOException $e) {

$error = true;
$message['error'] = true;
$message['message'] = $e->getMessage();;
return json_encode($message);
}
}

上述功能的问题是,当我执行它时,数据库没有恢复,而是清空了备份数据库表的.sql文件。发生了什么事?

最佳答案

将大于号改为小于号。现在在你的恢复工作中,你有数据库再次写入一个文件;现在它已被清空,它正在清除文件。

mysql -h localhost -u root $this->database < $backup.sql
^

一般来说,>表示写,<表示阅读。

关于php - 恢复一个mysql数据库备份?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9139416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com