none
SQLServer2005でのスナップショットDBとスナップショットバックアップの違いについて RRS feed

  • 質問

  • はじめまして.
    今まで,DB2を使ってきましたが,今回初めてSQL Severを使用することになりました.
    DBのバックアップについて調べていますが,スナップショットデータベースとスナップショットバックアップの
    違いがよくわかりません.
    また,スナップショットバックアップの取得方法についても,マニュアルには,3rdベンダーに依存する的な
    記述しかないため,どの様な手法にて行うのかイメージがつかめないでおります.

    ご存知の方,ご教授いただけませんでしょうか.


    漠然とした質問で申しわけありませんが,よろしくお願いいたします.
    2009年4月1日 4:46

回答

  • 上記の言い回しの違いは良く分かりませんが、一般的なスナップショットバックアップについて記載します。
    Windows Server 2003 より、VSS (ボリューム シャドウ コピー サービス) によるスナップショットを取得できるようになりました。

    上記の機能を使用し、NT Backup 及び 3rd ベンダー製バックアップソフトにより、スナップ ショットを作成後、作成したスナップショットをバックアップするということが行えるようになりました。 (他のプロセスが掴んでいるファイルに対して、ファイル バックアップを行えることになります。)

    SQL Server で言うと、まず データベース スナップショット を作成後、作成した データベース スナップショット をバックアップするという手順になります。
    NT Backup でも上記の機能を実現可能なのですが、NT Backup はボリューム単位(ドライブ単位) でしかスナップショットを作成することが出来ないため、複数のドライブにデータベースを配置している構成の場合、NT Backup にてバックアップしたファイルをリストアしたとしても、SQL Server が正常に起動できるという保証がないみたいです。
    ※ 上記の構成の場合は、NT Backup は使用できず、SQL Server のバックアップコマンドにてバックアップを実施する必要がございます。

    その点 3rd ベンダー製バックアップソフトは、上記の構成においても、SQL Server のバックアップを正常に採取し、リストアできることを保証しております。
    また、大規模データベース用に、高速バックアップ(フラッシュバックアップなど)機能要しているものがあるのがメリットでしょうか。
    ※ 気をつけたら良い点として、3rd ベンダー製バックアップソフトにて採取したバックアップについては、あくまで 3rd ベンダー製バックアップソフトにて保証されているものであり、左記のバックアップにて採取したバックアップをリストアした際に何らかの問題が発生したとしても、MSからのサポートは恐らく受けることが出来ない点ですかね。

    データベース スナップショットについての詳しい内容は、以下のURLをご参照下さい。

    データベース スナップショット
    << http://msdn.microsoft.com/ja-jp/library/ms187054(SQL.90).aspx >>

    • 回答としてマーク Azrael 2009年4月2日 12:50
    2009年4月1日 10:49
  • こんにちは、naginoです。

    「スナップショットデータベース」というのは、データベーススナップショットのことでしょうか。
    これは、データベースのある一時点のコピー(ビューのようなもの)です。
    もちろんここからバックアップを作成するという手もありますが、変則的な手法かと思います。

    「スナップショットバックアップ」というのは、こちらですね。
    これは OS の機能(になるかと思います)である VSS を利用したバックアップ方法で、ある特定時点の瞬間のストレージのバックアップを取るようなイメージです。
    仕組みの説明としては以下が参考になるかと思います。
    ちなみに、色々なサードバーティー製品が対応しています。

    なお、既にご存知だとは思いますがこれ以外にも SQL Server には標準でのバックアップ機能があります。
    たとえばクエリでもオンラインバックアップが可能です。
    通常はこういった方法で十分かと思いますので、スナップショットバックアップに注目する理由がありましたらその点記載いただけるとより適切な情報を提示できるかもしれません。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク Azrael 2009年4月2日 12:50
    2009年4月1日 11:02

すべての返信

  • 上記の言い回しの違いは良く分かりませんが、一般的なスナップショットバックアップについて記載します。
    Windows Server 2003 より、VSS (ボリューム シャドウ コピー サービス) によるスナップショットを取得できるようになりました。

    上記の機能を使用し、NT Backup 及び 3rd ベンダー製バックアップソフトにより、スナップ ショットを作成後、作成したスナップショットをバックアップするということが行えるようになりました。 (他のプロセスが掴んでいるファイルに対して、ファイル バックアップを行えることになります。)

    SQL Server で言うと、まず データベース スナップショット を作成後、作成した データベース スナップショット をバックアップするという手順になります。
    NT Backup でも上記の機能を実現可能なのですが、NT Backup はボリューム単位(ドライブ単位) でしかスナップショットを作成することが出来ないため、複数のドライブにデータベースを配置している構成の場合、NT Backup にてバックアップしたファイルをリストアしたとしても、SQL Server が正常に起動できるという保証がないみたいです。
    ※ 上記の構成の場合は、NT Backup は使用できず、SQL Server のバックアップコマンドにてバックアップを実施する必要がございます。

    その点 3rd ベンダー製バックアップソフトは、上記の構成においても、SQL Server のバックアップを正常に採取し、リストアできることを保証しております。
    また、大規模データベース用に、高速バックアップ(フラッシュバックアップなど)機能要しているものがあるのがメリットでしょうか。
    ※ 気をつけたら良い点として、3rd ベンダー製バックアップソフトにて採取したバックアップについては、あくまで 3rd ベンダー製バックアップソフトにて保証されているものであり、左記のバックアップにて採取したバックアップをリストアした際に何らかの問題が発生したとしても、MSからのサポートは恐らく受けることが出来ない点ですかね。

    データベース スナップショットについての詳しい内容は、以下のURLをご参照下さい。

    データベース スナップショット
    << http://msdn.microsoft.com/ja-jp/library/ms187054(SQL.90).aspx >>

    • 回答としてマーク Azrael 2009年4月2日 12:50
    2009年4月1日 10:49
  • こんにちは、naginoです。

    「スナップショットデータベース」というのは、データベーススナップショットのことでしょうか。
    これは、データベースのある一時点のコピー(ビューのようなもの)です。
    もちろんここからバックアップを作成するという手もありますが、変則的な手法かと思います。

    「スナップショットバックアップ」というのは、こちらですね。
    これは OS の機能(になるかと思います)である VSS を利用したバックアップ方法で、ある特定時点の瞬間のストレージのバックアップを取るようなイメージです。
    仕組みの説明としては以下が参考になるかと思います。
    ちなみに、色々なサードバーティー製品が対応しています。

    なお、既にご存知だとは思いますがこれ以外にも SQL Server には標準でのバックアップ機能があります。
    たとえばクエリでもオンラインバックアップが可能です。
    通常はこういった方法で十分かと思いますので、スナップショットバックアップに注目する理由がありましたらその点記載いただけるとより適切な情報を提示できるかもしれません。


    MCITP(Database Developer/Database Administrator)
    • 回答としてマーク Azrael 2009年4月2日 12:50
    2009年4月1日 11:02
  • NOBTA さん,nagino さん

    返信が遅くなり申し訳ありません.
    ご指摘の通りスナップショットDBはDBスナップショットの誤りです.

    バックアップによるパフォーマンスの低下を最小限に抑えたいという点でバックアップ
    プロセスもしくはバックアップソフトがDB関連のファイルへのアクセスを短時間にした
    いという点でスナップショットバックアップ及びDBスナップショットに注目し,
    色々と調べているうちに混乱してしまい,よく分からなくなってしまいました.

    参考になるURLのご紹介,及び機能についてのご説明ありがとうございます.

    おかげさまで疑問が解けました.
    2009年4月2日 12:50