Windowsのよく知られたバックアップユーティリティの多くは、新しいバージョンのWindowsに組み込まれているボリュームシャドウコピーサービスを使用して、開いているファイルを安全にバックアップするために、ディスクの特定の時点のスナップショットを作成します。
しかし、このメカニズムはSQL Serverでどの程度うまく機能しますか? SQL Server VSS Writerは、バックアップシステムとSQL Serverの相互運用を支援するために存在しますが、すべてのバックアップシステムがSQL Serverについて知っていて、SQL Serverが提供するバックアップ関連のAPIを利用しているわけではありません。
だから私の質問は、SQL Serverについて何も知らないプログラムについてはどうですか?
おそらく、MDFおよびLDFファイルが1つの瞬間に存在していたため、その時点のスナップショットを取得します。SQLServerデータ形式は、そのようなスナップショットが保証されるほど十分に堅牢です。一貫性と使いやすさのために。
それは物事が機能する方法ですか、それとも何か不足していますか?そのようなバックアップメカニズムを使用することについて「落とし穴」はありますか、それとも私は安全ですか?
短い答え:SQLサーバーが適切に構成されていない限り、それらはうまく連携しません(そして、それでも私はそれをお勧めしません)。
VSSとMSSQLが一緒に遊んでいることに関する多くの情報がここにあります:
MSKB919023: SQL Server 2005接続およびボリュームシャドウコピーサービス(VSS) 。
警告の一言:
おそらく、SQL Serverデータ形式は十分に堅牢であり、そのようなスナップショットは一貫性があり使用可能であることが保証されます
これは大きな仮定であり、残念ながら必ずしも安全であるとは限りません。そのため、災害から確実に回復できるようにするためには、MSSQL保守計画が不可欠です。
あなたneverバックアップMDFおよびLDFファイル。
バックアップ(プラン、SQL、SMOなど)を実行してから、これらのバックアップファイルをバックアップします。
率直に言って、VSSについてベンダーが言っていることはわかりません。バックアップ用のSQL Serverプラグインを持っているベンダーも嫌いです。 SQL Serverのネイティブバックアップを使用するonly
参考:MDFとLDFもウイルススキャンから除外します。
SQL「オプション」のあるソフトウェアがない場合は、次のようにします。
データベースのSQLメンテナンスプランまたはスケジュールされたバックアップジョブを作成し、それらをディスクにダンプしてから、サーバーをバックアップします。または、それらをダンプするときに、ディスクからディスクへのバックアップの場所がある場合は、直接バックアップします。
VSSバックアップの主な問題は、SQLサーバーでのキャッシュが原因です。
ディスクの現在の状態には、必ずしもすべてのデータベース変更が含まれているわけではありません。スナップショットを作成する前に、SQLサーバーがすべてのキャッシュを確実に書き込むようにするには、Backupsoftwareがこれを認識している必要があります。
そうは言っても、最も安全な方法は、依然としてsql管理/ sqlサーバーツールでバックアップすることです。
また、すべてのSQLサーバーデータとバックアップファイルをウイルススキャナー(.bak、.mdf、.ldf)から除外する必要があります。