2022-02-09 21:41:35 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
namespace A2nt\CMSNiceties\Tasks;
|
|
|
|
|
|
|
|
use SilverStripe\Assets\File;
|
|
|
|
use SilverStripe\Dev\BuildTask;
|
|
|
|
use SilverStripe\ORM\DB;
|
|
|
|
|
|
|
|
class DumpMySQL extends BuildTask
|
|
|
|
{
|
|
|
|
protected $title = 'Dump MySQL Task';
|
|
|
|
protected $description = 'Create MySQL dump';
|
|
|
|
protected $enabled = true;
|
|
|
|
|
|
|
|
public function run($request)
|
|
|
|
{
|
|
|
|
$cfg = DB::getConfig();
|
|
|
|
|
2022-02-09 22:02:31 +01:00
|
|
|
try {
|
2022-02-09 21:48:10 +01:00
|
|
|
ob_clean();
|
|
|
|
} catch (Exception $e) {
|
2022-02-09 22:02:31 +01:00
|
|
|
}
|
2022-02-09 21:41:35 +01:00
|
|
|
|
2022-02-09 22:02:31 +01:00
|
|
|
header('Content-Disposition: attachment; filename="backup-'.date('d-m-Y').'.sql"');
|
|
|
|
passthru('mysqldump -u '.$cfg['username'].' --password="'.$cfg['password'].'" '.$cfg['database']);
|
2022-02-09 21:41:35 +01:00
|
|
|
exit(0);
|
|
|
|
}
|
|
|
|
}
|