I'm trying to take a backup of my database using mysqldump
. When I use php artisan serve
command it works perfectly on my local machine. but when I access it through URL is generates an empty file.
public function getBackup()
{
$dbhost = env('DB_HOST');
$dbuser = env('DB_USERNAME');
$dbpass = env('DB_PASSWORD');
$dbname = env('DB_DATABASE');
$dbfilename = 'easytrax_db_' . date("Y_m_d_his") . '.sql.gz';
$backupfile = base_path("db") . '/' . $dbfilename;
exec("mysqldump --max_allowed_packet=4000M --skip-lock-tables -h$dbhost -u$dbuser -p$dbpass $dbname | gzip > $backupfile");
return response()->download(base_path("db/{$dbfilename}"));
}
currently using wamp. mysql version: 8.0.21 php version: 7.2.33