web-dev-qa-db-ja.com

SQL Serverデータベースを毎晩バックアップする最良の方法は?

SQL Server 2005データベースを毎晩バックアップする最良の方法は何ですか?

データベースのバックアップファイルを作成し、それを「送信」ディレクトリに配置するソリューション/戦略を探しています。 FTPソフトウェアがそれをオフサイトサーバーに移動することを望んでいます。

これを希望どおりに機能させる方法について何か提案はありますか?

8
Urda

これは無料でできます。 DBをバックアップするための保守計画を作成し、ファイルを送信する場所を定義して、クリーンアップタスクを追加できます。

エクスプレスでメイントプランを使用できない場合は、このツールを使用してバックアップジョブを自動的に実行します: http://www.codeplex.com/ExpressMaint そして単純なVBウィンドウのスケジュールされたタスクとしてフォルダをクリーンアップするスクリプト

次に、Windowsのスケジュールされたタスクとしてログを毎晩FTPで転送するスクリプトを作成します。

セットアップの1つでまったく同じことを行います。

オフサイトサーバーがDBサーバーとの常時VPN上にある場合は、バックアップフォルダーをDFSできます。

編集:これをローカルbksと一緒に「追加の」完全バックアップとして使用する場合は、プランのバックアップジョブにTSQLステートメントを使用し、バックアップに「COPY_ONLY」をスローする必要があるため、差分はありません。それを参照として使用していませんが、計画どおりにローカルでいっぱいです。

9
Malnizzle

簡単なスクリプト(文書化されていない手順を使用するalbiet)を以下に示します。これにより、デフォルトのバックアップディレクトリに配置されますが、サービスアカウントに他のディレクトリへの権限がある場合は、最後の疑問符の前に追加できます。 「init」は最後のデータベースバックアップを上書きするため、ドライブがいっぱいになることはありません。

set quoted_identifier on

exec sp_MSforeachdb "
if ( '?' not in ( 'tempdb' ) )
begin
    backup database [?] to disk = '?.bak' with init, stats = 10
end
"
2

Backup Exec System Recoveryはバックアップを実行し、任意のスケジュールでオフサイトにFTPで転送します

1
Dave M

ログシッピングもこれをうまく行います。

1
Nai