SQL Anywhere は、Microsoft ボリュームシャドウコピーサービス (VSS) と互換性があります。VSS を使用すると、ディスクボリューム全体またはボリュームセットのポイントインタイムスナップショットを作成したり、SQL Anywhere データベースサーバーなどのアプリケーションで排他的に使用するために開かれているファイルのコピーを作成することができます。VSS は、32 ビット版の Microsoft Windows XP オペレーティングシステムと、32 ビットおよび 64 ビット版の Microsoft Windows 2003 以降のオペレーティングシステムでサポートされています。
デフォルトでは、SQL Anywhere VSS ライター (dbvss12.exe) が実行されている場合、すべての SQL Anywhere データベースでバックアップに VSS サービスを使用できます。VSS は、SQL Anywhere VSS ライターなしでデータベースのバックアップに使用できます。ただし、これらのデータベースをリストアするには、SQL Anywhere の完全なリカバリ手順を使用する必要がある可能性があります。データベースサーバーが VSS サービスに参加しないようにするには、データベースサーバーの起動時に -vss- を指定します。また、Windows 用サービスユーティリティ (dbsvc) を使用して VSS サービスの開始時刻を指定することもできます。
SQL Anywhere では VSS は次のように機能します。
バックアップアプリケーションが、スナップショットを作成するコマンドを VSS に送信します。
VSS が SQL Anywhere VSS ライター (dbvss12.exe) に 「identify」 コマンドを発行します。
VSS が、すべてのトランザクションをサスペンドし、すべてのデータベースサーバーにあるすべてのデータベースの変更されたすべてのページをディスクに書き込む 「prepare to snapshot」 コマンドを発行します。データベースのトランザクションが 10 秒以内にサスペンドしなかった場合は、コミットされていないトランザクションがスナップショットに含まれ、フルリカバリが必要になる場合があります。
VSS が、すべてのデータベースサーバーにあるすべてのデータベースのすべてのアクティビティをチェックポイントしてからサスペンドする 「freeze」 コマンドを発行します。各 SQL Anywhere データベースサーバーは、すべてのデータベースですべてのアクティビティがサスペンドされるまで最大 60 秒間待ちます。一般にこの処理には数秒間かかります。
VSS が、SQL Anywhere VSS ライターに 「thaw」 コマンドを発行し、すべてのデータベースサーバーにあるすべてのデータベースに対するすべてのトランザクションを再開します。
まれに、VSS で許可されている最大時間内に、SQL Anywhere がトランザクションをサスペンドしたり、チェックポイントを完了したりできないことがあります。この場合は、トランザクションログファイルとフルリカバリ処理を使用して、バックアップしたデータベースをリカバリする必要があります。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |