T-SQL удаляет файл резервной копии сразу после его создания - PullRequest
0 голосов
/ 18 октября 2018

Я создал скрипт на PHP / PDO, который выполняет строку SQL для резервного копирования файлов различных баз данных.Список имен базы данных и метка даты, с которой можно выбрать папку, в которую следует поместить файл, передаются как элементы массива HTTP REQUEST.Сценарий работает, но по какой-то причине SQL Server удаляет файл, как только сценарий завершает работу.С открытым Проводником я могу наблюдать, как папка и файл создаются правильно, но файл исчезает после завершения.Вот

$dbh = getPDOConnection();
$sql = "BACKUP DATABASE :database TO DISK = :path";
$sth = $dbh->prepare($sql);
$dt = $_REQUEST["dtStamp"];

$uncPath = "\\\\[unc server]\\c$\MSSQL\\Backup\\backups_$dt";

if (!file_exists($uncPath)) {
    mkdir($uncPath, null, true);
}
$responses = [];
foreach(explode(",", $_REQUEST["databases"]) AS $d=>$database) {
    $sqlPath = "c:\\MSSQL\\Backup\\backups_$dt\\$database.bak";

    $sth->bindValue(":database", $database);
    $sth->bindValue(":path", $sqlPath);
    $sth->execute();

    $responses[] = $sth->fetch(PDO::FETCH_ASSOC);
}

Может кто-нибудь указать мне на то, что мне не хватает?Кажется, я не могу найти какую-либо документацию от Microsoft, в которой указано, почему это происходит.

...