数据库备份
控制器MysqlData.Php的代码
public function backup(Request $request){
if ($request->isPost()) {
$backup_dir = $request->post('backup_dir');
$backup_name = $request->post('backup_name');
//1.先创建目录
if (!file_exists($backup_dir)) {
mkdir($backup_dir, 0777, true);
}
//2.备份名字加上日期
$backup_name ='./'. $backup_dir . '/' . $backup_name . '.sql';
$command = "D:\phpstudy_pro\Extensions\MySQL5.5.29\bin\mysqldump.exe -h localhost -ublog -pblogblog blog > $backup_name";
exec($command);
//3.在数据库中生成一份备份目录
$data['backup_admin_id'] = session('user.id');
$data['backup_name'] =$backup_name;
$data['backup_time'] = date('y-m-d H:i:s');
//执行
if ((new Backup())->save($data)){
$this->success('备份成功','backupList');
}else{
$this->error('备份失败');
}
}
else {
return $this->fetch('backup');
}
}
备份表单back_up.html的代码
<form action="" method="post">
<p>
备份目录:<input type="text" name="backup_dir">
</p>
<p>
备份文件名:<input type="text" name="backup_name">
</p>
<p>
<input type="submit" value="备份">
</p>
</form>
数据库表