Advanced Operations Guide (v11)

Continuous オペレーションの使用

Continuous オペレーションは、データベース アプリケーションが実行中でユーザーが接続されている間にデータ ファイルのバックアップを行う機能を提供します。ただし、ハード ドライブ障害の場合、Continuous オペレーションを使用してバックアップを作成していた場合には、最後のバックアップ移行のデータの変更はすべて失われます。アーカイブ ログおよび Maintenance ユーティリティのロール フォワード コマンドを使用して最終バックアップ後に起こったデータ ファイルへの変更を復元することはできません。

Pervasive PSQL には Continuous オペレーションのためのバックアップ コマンド BUTIL があります(また、Pervasive PSQL は製品として Pervasive Backup Agent を提供し、Continuous オペレーションを設定および管理します。詳細については、その製品で提供されるマニュアル『Pervasive Backup Agent Guide』を参照してください)。


メモ

Continuous オペレーションが設定されているデータ ファイルは、リレーショナル インターフェイスからトランザクショナルインターフェイスに至るまで削除が行えません。さらに、このファイルはキーの変更などファイル構造の変更も受け付けません。


このセクションは、以下のトピックに分かれています。

Continuous オペレーションの開始と停止

このセクションでは、STARTBU および ENDBU コマンドの詳細について説明します。

表 36 Continuous オペレーションの開始と停止を行うコマンド
コマンド
説明
バックアップを対象として定義されたファイルの Continuous オペレーションを開始します。(BUTIL)
バックアップを対象として定義されたファイルの Continuous オペレーションを停止します。(BUTIL)


注意

Continuous オペレーション モードによって作成されたテンポラリ デルタ ファイルは対応するデータ ファイルと同じ名前ですが、拡張子 ".^^^" を使用します。同じディレクトリに、ファイル名が同一で拡張子のみが異なるようなファイルを置かないでください。たとえば、データ ファイルに INVOICE.HDR および INVOICE.DET というような名前の付け方をしないでください。もしそうした場合、MicroKernel はステータスを返し、ファイルは Continuous オペレーションに入れられません。


Continuous オペレーション モードは、MicroKernel のパフォーマンスにほとんど影響を与えませんが、ファイルのバックアップにサーバーを使用した場合は、影響が出ることがあります。

Continuous オペレーションを使用してデータの消失を防止するには

  1. STARTBU コマンドを使用し、ファイルに Continuous オペレーションを適用します。BUTIL のコマンド構文の説明については、STARTBU を参照してください。
  2. データ ファイルをバックアップします。
  3. ENDBU コマンドを使用し、ファイルに対する Continuous オペレーションを解除します。BUTIL のコマンド構文の説明については、ENDBU を参照してください。

BUTIL を使用してデータベースのバックアップを行う

このセクションでは、BUTIL コマンドの STARTBU および ENDBU を使用したデータベースのバックアップに関する詳細について説明します。

STARTBU

BUTIl STARTBU コマンドは、バックアップの目的でファイル(複数可)の Continuous オペレーションを開始します。

形式

BUTIL -startbu <sourceFile | @listFile> [/UID<name> </
PWD<word>> [/DB<name>]] 

sourceFile
バックアップのために Continuous オペレーションを開始するデータ ファイルのフル パス名(Windows プラットフォームのドライブ指定を含む)。
この完全に修飾された名前は、butil を実行しているのと同じマシン上に存在している必要があります。STARTBU コマンドではマップ ドライブは使用できません。
listFile
Continuous オペレーションを開始するファイルの、フル パス名を含むテキスト ファイルの名前。これらのファイル名は、キャリッジ リターン/ライン フィードで区切ります。ファイル名は、スペースで区切ることもできますが、Pervasive PSQL の新しいバージョンでは、ファイル名にスペース文字が使用できるようになる可能性もあるため、Pervasive PSQL の将来のバージョンとの互換性を保つために、区切り文字にはキャリッジ リターン/ライン フィードを使用してください。

指定したすべてのファイルを対象に Continuous オペレーションを行えない場合、ユーティリティによるファイルへの Continuous オペレーションは一切行われません。
/UID<name>
/UIDuname
セキュリティが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定します。
/PWD<word>
/PWDpword
uname で識別されるユーザーのパスワードを指定します。uname が指定された場合、pword は必ず指定する必要があります。
/DB<name>
/DBdbname
セキュリティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベースと解釈されます。


メモ

この startbu コマンドは、指定したファイルのみに対して Continuous オペレーションを開始します。startbu コマンドでは、ワイルドカードは使用できません。

Linux ディストリビューションの場合、すべての "/" パラメーターはスラッシュの代わりにハイフン("-") を使用します。たとえば、/DB パラメーターは -DB です。


ファイルに関する考慮点

バックアップ対象のファイルを選択する場合、Continuous オペレーション モードによって作成されるテンポラリ デルタ ファイルは除外することをお勧めします。これらのファイルは、バックアップ時に開かれ使用中だからです。デルタ ファイルがバックアップに含まれる場合、データの復元後、これらのファイルはデータベース エンジンが起動する前に削除しておく必要があります。

Windows サーバーの例

例 A 最初の例は、COURSE.MKD の Continuous オペレーションを開始します。

Windows サーバー の場合

butil -startbu file_path¥PSQL¥Demodata¥course.mkd 

Pervasive PSQL ファイルのデフォルトの保存場所については、『Getting Started with Pervasive PSQL』の Pervasive PSQL ファイルがインストールされる場所を参照してください。

例 B 以下の例は、STARTLST.FIL にリストされているすべてのファイルに対して Continuous オペレーションを開始します。

butil -startbu @startlst.fil 

STARTLST.FIL は、以下のようなエントリで構成されます。

file_path¥PSQL¥Demodata¥course.mkd 
file_path¥PSQL¥Demodata¥tuition.mkd 
file_path¥PSQL¥Demodata¥dept.mkd 

ENDBU

ENDBU コマンドは、バックアップのために事前に定義したデータ ファイル(複数可)に対する Continuous オペレーションを終了します。このコマンドは、startbu コマンドを使用して Continuous オペレーションを開始し、バックアップを実行した後に使用します。

形式

BUTIL -ENDBU </A | sourceFile | @listFile> [/UID<name> </
PWD<word>> [/DB<name>]] 

/A
/A を指定した場合は、startbu で初期化され、現在 Continuous オペレーション モードにあるすべてのデータ ファイルに対する Continuous オペレーションが停止します。
sourceFile
Continuous オペレーションを終了するデータ ファイルのフル パス名(Windows プラットフォームのドライブ指定を含む)。
この完全に修飾された名前は、butil を実行しているのと同じマシン上に存在している必要があります。endbu コマンドではマップ ドライブは使用できません。
@listFile
Continuous オペレーションを終了するデータ ファイル名のリストを含むテキスト ファイルの名前。このテキスト ファイルには、各データ ファイルのフル パス名が、キャリッジ リターン/ライン フィードで区切られて入力されている必要があります。ファイル名は、スペースで区切ることもできますが、Pervasive PSQL の新しいバージョンでは、ファイル名にスペース文字が使用できるようになる可能性もあるため、Pervasive PSQL の将来のバージョンとの互換性を保つために、区切り文字にはキャリッジ リターン/ライン フィードを使用してください。

通常、このデータ ファイルのリストは、STARTBU コマンドで使用するリストと同じものになります。
/UID<name>
/UIDuname
セキュリティが設定されているデータベースにアクセスする権限を与えられたユーザー名を指定します。
/PWD<word>
/PWDpword
uname で識別されるユーザーのパスワードを指定します。uname が指定された場合、pword は必ず指定する必要があります。
/DB<name>
/DBdbname
セキュリティが設定されたデータベース名を指定します。省略した場合はデフォルトのデータベースと解釈されます。


メモ

Linux ディストリビューションの場合、すべての "/" パラメーターはスラッシュの代わりにハイフン("-") を使用します。たとえば、/A パラメーターは -A で、butil -endbu -A のようになります。


Windows サーバーの例

以下の例では、COURSE.MKD の Continuous オペレーションを終了します。

butil -endbu file_path¥PSQL¥Demodata¥course.mkd  

ここでは、現在のディレクトリが f:¥demodata の場合、フル パスを省略して butil -endbu course.mkd とすることもできます。

Continuous オペレーション使用時のデータ ファイルの復元

バックアップの方法として Continuous オペレーションを使用している場合、最後のバックアップ以降の変更を回復するためのリカバリ ログはありません。最後のバックアップ以後のデータベースの変更はすべて失われますが、残っている可能性があるのは、トランザクション ログに残されたトランザクションだけです。このようなトランザクションは、データベース エンジンの再起動時に自動的にロール フォワードされます。

データとデータベース オペレーションを復元するには

  1. エラーを解決します。
    障害が起きたコンピューターを再起動するのに必要な保守を行います。
  2. バックアップからデータ ファイルを復元するか、バックアップからハード ドライブ イメージを復元するか適切な方法をとります。
  3. ディスク イメージの一部として Pervasive PSQL が復元されなかった場合は、再インストールします。

    注意

    デルタ ファイルがバックアップ ファイルに含まれる場合、これらのファイルは、次の手順でデータベース エンジンが起動する前に削除しておく必要があります。


  4. データベース エンジンを再起動します。
    最後のバックアップ以後に実行されたデータベース オペレーションを再度実行する必要があります。

アーカイブ ログの使用

Backup Agent および VSS Writer によるデータ バックアップ