47

このコードを使用してデータベースをバックアップしたい

sqlcmd -S servername -Q "BACKUP DATABASE [DBName] TO DISK = 'C:\backup.bak'"

できます。ただし、バックアップ ファイルが既に存在する場合は、ファイルが置き換えられるのではなく、データがファイルに追加されます。ファイルを呼び出すたびにBACKUP DATABASE、ファイルが大きくなります。

BACKUP DATABASE強制的に置換するオプションはありますか?

4

4 に答える 4

81
sqlcmd -S servername -Q "BACKUP DATABASE [DBName] TO DISK = 'C:\backup.bak' WITH INIT"
于 2012-12-04T18:54:45.160 に答える
29

INITトリックを行います。MSDNから:

INITすべてのバックアップセットを上書きする必要があることを指定します

于 2012-12-04T18:54:23.260 に答える
1

WITH INIT十分ではありません。WITH INIT, SKIP最近のはずです。ドキュメント

説明:INITいくつかの条件が満たされた場合にのみ上書きします。SKIPこれらの条件を無視するように指示します。

于 2021-12-18T22:29:09.403 に答える