Исправлено подключение mysqldump - убраны --host/--port
mysqldump теперь использует Unix сокет по умолчанию вместо TCP. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -3,9 +3,6 @@ namespace App;
|
||||
|
||||
class BackupService
|
||||
{
|
||||
private string $host = 'localhost';
|
||||
private string $port = '3306';
|
||||
|
||||
public function __construct(
|
||||
private string $user,
|
||||
private string $pass
|
||||
@@ -30,9 +27,7 @@ class BackupService
|
||||
$tempFile = sys_get_temp_dir() . '/backup_' . $database . '_' . uniqid() . '.sql.gz';
|
||||
|
||||
$cmd = sprintf(
|
||||
'mysqldump --host=%s --port=%s --user=%s --password=%s --single-transaction --routines --triggers %s 2>&1 | gzip > %s',
|
||||
escapeshellarg($this->host),
|
||||
escapeshellarg($this->port),
|
||||
'mysqldump --user=%s --password=%s --single-transaction --routines --triggers %s 2>&1 | gzip > %s',
|
||||
escapeshellarg($this->user),
|
||||
escapeshellarg($this->pass),
|
||||
escapeshellarg($database),
|
||||
@@ -66,9 +61,7 @@ class BackupService
|
||||
$dbList = implode(' ', array_map('escapeshellarg', $databases));
|
||||
|
||||
$cmd = sprintf(
|
||||
'mysqldump --host=%s --port=%s --user=%s --password=%s --single-transaction --routines --triggers --databases %s 2>&1 | gzip > %s',
|
||||
escapeshellarg($this->host),
|
||||
escapeshellarg($this->port),
|
||||
'mysqldump --user=%s --password=%s --single-transaction --routines --triggers --databases %s 2>&1 | gzip > %s',
|
||||
escapeshellarg($this->user),
|
||||
escapeshellarg($this->pass),
|
||||
$dbList,
|
||||
|
||||
Reference in New Issue
Block a user