Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
(メインデータベースファイルへの書き込みが発行されると同時に) データベースへのすべての書き込みが発行される、データベースミラーファイルの名前を指定します。
MIRROR_FILE=path\mirrorfile-db
なし
Ultra Light には、潜在的に信頼性が低いストレージシステムのフォールトトレランスを改善する基本的なデータベースファイルミラーリング機能があります。ミラーリングには、ミラーファイルが使用されます。データベースへのすべての書き込みは、メインデータベースファイルに対して発行されると同時にミラーファイルにも発行されます。したがって書き込みのオーバヘッドは 2 倍になり、読み込みのオーバヘッドには影響ありません。データベースファイルから破損したページが読み込まれた場合、ミラーファイルから読み込むことでページをリカバリできます。
ミラーリングは、ファイルベースのストアを使用するすべてのプラットフォームでサポートされています。
データベースの起動時に mirror_file= オプションが指定された場合、Ultra Light は指定されたファイルを開き、メインデータベースファイルと一致することを確認してから、処理を続行します。ミラーファイルがない場合は、この時点でメインファイルをコピーして作成されます。ミラーがデータベースファイルではないか破損していると、エラーが報告されます。この場合、ファイルが削除されるか、別のミラーが指定されるまで、データベースは起動しません。ミラーがデータベースと一致しない場合は、SQLE_MIRROR_FILE_MISMATCH が生成され、データベースは起動しません。破損したページがリカバリされると、警告 SQLE_CORRUPT_PAGE_READ_RETRY が生成されます。ミラーリングを使用していないか、ミラーファイルも破損している場合は、エラー SQLE_DEVICE_ERROR が生成され、データベースが停止します。
メディア障害から効果的に保護するために、ミラーファイルを使用しているときはページチェックサムを有効にしてください。ミラーリングを行っているかどうかに関係なく、ページチェックサムによって、ページのロード後すぐに Ultra Light でページの破損が検出可能になり、破損したデータの参照を回避できます。チェックサムを有効にするには checksum_level データベース作成オプションを指定します。ミラーファイルを使用しているときにチェックサムが有効になっていなかった場合、警告 SQLE_MIRROR_FILE_REQUIRES_CHECKSUMS が生成されます。
ミラーは、データベースファイルとまったく同じコピーなので、データベースとして直接起動できます。破損したページは ulvalid ユーティリティによって報告されます。
次の例では、新しい接続を作成し、ミラーファイルを作成します。
Connection = DatabaseMgr.OpenConnection("DBF=c:\Dbfile.udb; UID=JDoe;PWD=ULdb; MIRROR_FILE=c:\test\MyMirrorDB.udb")