ページの先頭行へ戻る
Symfoware Server V10.0.0 コマンドリファレンス

2.43 rdbrcv

名前

rdbrcv -- データベースの資源のリカバリ

形式(LOADモードの形式)

rdbrcv -L -i データベース名.DSI名
          -f {{退避先名@デバイス名[{;デバイス名} ...] | バックアップ制御ファイル名 } [ -r | -rb ]
             | {base [ -p データベース名.データベーススペース名] }}
          [ -freerate  空き率 ]
          -w ワークファイルパス名[{;ワークファイルパス名} ...]
          [ -y ]

形式(FWモードの形式)

rdbrcv -F -i データベース名.DSI名
          [ -p データベース名.データベーススペース名 ]
          -f {退避先名@デバイス名[{;デバイス名} ...] | バックアップ制御ファイル名 | init }
          [ -r | -rb ] 
          [ -freerate 空き率]
          [ -E リカバリ終了点名 | -dump ]
          [ {-a アーカイブログ退避先名@デバイス名
             [ {:アーカイブログ退避先名@デバイス名} ...]
             | -l ファイル名} ]
          -w ワークファイルパス名[{;ワークファイルパス名} ...]
          [ -y ]

形式(REFモードの形式)

rdbrcv -R -p データベース名.データベーススペース名
       -f {エクステント形式の退避データがあるディレクトリ名
        | バックアップ制御ファイル名 }
       [ -r | -rb ]
        -w ワークファイルパス名[{;ワークファイルパス名} ...]

形式(DIRモードの形式)

rdbrcv -D -i データベース名.DSI名

形式(LOADモードのファイル指定の形式)

rdbrcv -L -t ファイル名
       -w ワークファイルパス名[{;ワークファイルパス名} ...]
       [ -y ]

形式(FWモードのファイル指定の形式)

rdbrcv -F -t ファイル名
       [ -p データベース名.データベーススペース名 ]
       [ {-a アーカイブログ退避先名@デバイス名
       [ {;アーカイブログ退避先名@デバイス名} ...]
       | -l ファイル名} ]
       -w ワークファイルパス名[{;ワークファイルパス名} ...]
       [ -y ]

形式(DIRモードのファイル指定の形式)

rdbrcv -D -t ファイル名 

機能説明

退避データ、データベーススペースのデータをもとにデータベースの資源のリカバリを行います。

オプション

-L

当該データベース資源(DSI)を、退避データの取得時点の状態にまでリカバリする場合に指定します。
このリカバリ方法を、LOADモードのリカバリといいます。
リカバリ対象が表のDSIの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

-F

当該データベース資源(DSI)を、アーカイブログを適用して、最新状態にまでリカバリする場合に指定します。
このリカバリ方法を、FWモードのリカバリといいます。
リカバリ対象が表のDSIの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

-R

参照しかしていない当該データベース資源(エクステント)を、アーカイブログを適用せずに、最新の状態にまでリカバリする場合に指定します。
参照しかしていないデータベース資源とは、退避データを作成したあと、現在まで継続して更新抑止を設定してあるデータベース資源です。
また、エクステントとは、DSIを割り当てているデータベーススペースごとの領域のことをいいます。
このリカバリ方法を、REFモードのリカバリといいます。
本モードは、エクステント形式で退避データを取得している場合のみ実行可能です。
リカバリ対象が表のDSIを割り当てているデータベーススペースの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

-D

インクリメンタルリカバリを行う場合に指定します。
RDBディレクトリファイルの情報のうちで、指定されたDSIのアクセス情報のみをリカバリします。
このリカバリ方法を、DIRモードのリカバリといいます。
リカバリするデータベース資源には、表のDSIを指定します。
表のDSIにインデックスが定義されている場合は、そのすべてのインデックスのDSIのRDBディレクトリのアクセス情報もリカバリします。
本モードは、rdbrcvdicコマンドの-ddlオプションとあわせて利用します。

-i データベース名.DSI名

リカバリするデータベースのDSI名を指定します。
DIRモードの場合、表のDSIのみが指定可能です。

-p データベース名.データベーススペース名

リカバリするデータベーススペース名を指定します。

-f 退避先名@デバイス名[{;デバイス名} ...]

退避先名には、データのバックアップ時に指定した退避先名またはパイプ名を指定します。
退避先名の後を、“@”で区切り、バックアップ先のデバイス名を指定します。
退避先名にデータのバックアップ時に指定した退避先名を指定した場合、デバイス名には、ファイルのディレクトリへの絶対パス名を指定します。
デバイス名を“;”で区切ることにより複数指定できますが、複数記述の際には空白をはさむことはできません。
退避先名にパイプ名を指定した場合、デバイス名には、“\\.\pipe”を指定します。
退避先名には、データのバックアップ時に使用したパイプ名と同じものを使用する必要はありません。
リカバリに使用する退避データは、パイプ指定で取得したものを指定してください。
退避先名に指定できる長さは、120バイトまでです。
デバイス名に指定できる長さは、120バイトまでです。

-f バックアップ制御ファイル名

エクステント形式の退避データを適用する場合、バックアップ先を記述したファイル名を指定します。
ファイル名に指定できる長さは、OSで定義される最大バイト数までです。
このファイルは、rdbdmpコマンドと共通の形式で、通常はrdbdmpコマンドで指定したファイルをそのまま指定します。
以下にファイル内の形式を説明します。

# コメント
データベース名.データベーススペース名
エクステント形式の退避データを配置するディレクトリ名
<改行>

先頭に“#”がある行は、コメント行として読みとばされます。
このとき“#”は必ず行の先頭に記述する必要があります。
ファイル内には空行を含むことができます。

データベース名.データベーススペース名

退避データを適用するデータベースのデータベーススペース名を指定します。
ファイル内に異なるデータベースのデータベーススペース名は記述できません。

エクステント形式の退避データを配置するディレクトリ名

エクステント形式の退避データを配置するディレクトリの絶対パス名を指定します。
エクステント形式の退避データを配置するディレクトリ名に指定できる長さは、144バイトまでです。
このディレクトリの配下には、rdbdmpコマンドが作成した以下のファイル名の退避データが存在しなければなりません。

データベース名.DSI名.データベーススペース名

-f エクステント形式の退避データがあるディレクトリ名

エクステント形式の退避データが配置されているディレクトリのパス名を指定します。
パス名に指定できる長さは、OSで定義される最大バイト数までです。
エクステント形式の退避データがあるディレクトリ名に指定できる長さは、144バイトまでです。
このディレクトリ配下のファイルは、rdbdmpコマンドが作成したエクステント形式の退避データを移動して使用することができます。
ただし、この場合、ファイル名は変更しないでください。

-f init

DSIが初期化された後、ログ適用が実施され、DSIがリカバリされます。
この指定は-Fオプション指定時にのみ有効です。
本オプション指定時は、-pオプションでデータベーススペースを指定することができます。
この場合、DSIを割り当てたデータベーススペースごとの領域(エクステント)単位でリカバリされます。

-f base

表のDSIの内容をもとに、リカバリ対象のインデックスのDSIがリカバリされます(ダンプレス機能)。
この指定は-Lオプション指定時かつ、リカバリ対象がインデックスのDSIの場合にのみ有効です。
本オプション指定時は、-pオプションでデータベーススペースを指定することができます。
この場合、指定されたデータベーススペースのインデックスのDSIの整合性を保証するための最小の範囲でインデックスをリカバリします。

-E リカバリ終了点名

rdbsetrpコマンドで指定した名称をリカバリの終了点として指定します。
これを指定した場合、rdbsetrpコマンド設定時に出力された位置までログの適用が行われます。
なお、FWモードで-pオプションを指定した場合は、このオプションを指定することはできません。

-dump

rdbdmpコマンド実行時に-cオプションを指定してバックアップしたデータと、アーカイブログを使用して、退避データ取得時点の状態にリカバリする場合に指定します。
なお、本オプションは、FWモードの場合のみ指定することができますが、-pオプション、-Eオプションおよび-f initオプションと同時に指定することはできません。
リカバリ対象が表のDSIの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

-a アーカイブログ退避先名@デバイス名
[{;アーカイブログ退避先名@ デバイス名}...]

アーカイブログ退避先名には、FWモードのリカバリで必要なすべてのアーカイブログ退避ファイル名を指定します。
アーカイブログ退避先名の後を、“@”で区切り、バックアップ先のデバイス名を指定します。
パス名の記述は“;”で区切ることにより複数指定できますが、複数記述の際には空白をはさむことはできません。
アーカイブログ退避先名に指定できる長さは、120バイトまでです。
デバイス名に指定できる長さは、120バイトまでです。
スケーラブルログ運用を行っている場合は、リカバリ対象のDSIが属するロググループのアーカイブログ退避ファイルを指定してください。

-w ワークファイルパス名[{;ワークファイルパス名}...]

作業用ファイルを獲得するすべてのパス名を、絶対パス名で指定します。
この記述も-aオプション同様に“;”で区切ることにより複数指定できますが、複数記述の際には空白をはさむことはできません。
複数記述を行う際にはすべてのパスに対して、そのパスが存在することと、書込み権があることを確認してください。
ワークファイルパス名に指定できる長さは、130バイトまでです。
作業用領域として必要な容量の見積りを以下に示します。

  • リカバリ対象が表のDSI、かつ、-f baseオプション を指定した場合

    リカバリ対象の表のDSIに定義しているインデックスのDSIごとにソート作業域を見積もり、その中で最大のサイズで見積もってください。

  • リカバリ対象が表のDSI、かつ、関連するインデックスのDSIが存在しない場合

    テンポラリログファイルのAIログ域見積りと同じです。詳細は、“RDB運用ガイド”を参照してください。

  • リカバリ対象が表のDSI、かつ、関連するインデックスのDSIが存在する場合

    以下の2つの値のうち、大きい方で見積もってください。

    • リカバリ対象の表のDSIに定義しているインデックスのDSIごとにソート作業域を見積もり、その中で最大のサイズで見積もる

    • テンポラリログファイルのAIログ域見積り

    インデックスのDSIのソート作業域のサイズの見積りを以下に示します。

  • 表のDSIがSEQUENTIALまたはOBJECTの場合

    インデックスがBTREE構造の場合

    ソート作業域のサイズ = (Size1 * 2 + 14) * レコード件数
    Size1 : インデックスを構成する列の長さの合計サイズ

    インデックスがXML構造の場合

    ソート作業域のサイズ = (Size1 * 2 + 36) * 検索対象となる要素・属性の数
    Size1 : インデックスに定義されている検索パスの長さの最大サイズ

  • 表のDSIがRANDOMであり、かつインデックスの構成列が一意性制約に対応する場合

    ソート作業域のサイズ = (Size2 * 2 + Size3) * レコード件数
    Size2 : インデックスを構成する列の長さの合計サイズ
    Size3 : クラスタキーを構成する列の長さの合計サイズ

  • 表のDSIがRANDOMであり、かつインデックスの構成列が一意性制約に対応しない場合

    ソート作業域のサイズ = (Size4 * 2 + Size5 * 2) * レコード件数
    Size4 : インデックスを構成する列の長さの合計サイズ
    Size5 : クラスタキーを構成する列の長さの合計サイズ

上記のうちSize1、Size2、Size3およびSize5において、さらに以下の見積りが必要です。

  • 列のデータ型がCHARACTER(VARYING含む)またはNATIONAL CHARACTER(VARYING含む)の場合、その列の長さを1.5倍にします。

-r

リカバリ対象が表のDSIの場合は、関連するすべてのインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします(同期復元機能)。このとき、インデックスのDSIに対して“アクセス禁止”が設定されている必要があります。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-rb

リカバリ対象が表のDSIの場合は、XML構造のインデックスを除く、すべてのBTREE構造のインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします(同期復元機能)。このとき、インデックスのDSIに対して“アクセス禁止”が設定されている必要があります。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-freerate 空き率

空き率として0~100の範囲内の数値を指定します。
これは表のDSIからインデックスのDSIリカバリ時にインデックスのDSI格納スペースの空き率となります。
本オプションを指定しない場合は、インデックスのDSI格納スペースの空き率は0となります。

-l ファイル名

FWモードのリカバリで必要なすべてのアーカイブログ退避先名を以下の形式で列挙したファイルを絶対パス名で指定します。
ファイル名に指定できる長さは、OSで定義される最大バイト数までです。
  アーカイブログ退避先名@デバイス名
  [{: | 改行}アーカイブログ退避先名@デバイス名]

アーカイブログ退避先名には、リカバリで必要なアーカイブログ退避ファイル名を指定します。
アーカイブログ退避先名@デバイス名を、改行または“;”で区切り、複数指定します。
この時、改行と“;”は混在してもかまいません。
また、改行または“;”からアーカイブログ退避先名@デバイス名までの空白あるいはアーカイブログ退避先名@デバイス名から改行または“;”までの空白は、読みとばされます。
アーカイブログ退避先名に指定できる長さは、120バイトまでです。
デバイス名に指定できる長さは、120バイトまでです。
スケーラブルログ運用を行っている場合は、リカバリ対象のDSIが属するロググループのアーカイブログ退避ファイルを指定してください。

-y

デバイス名に磁気テープ装置を指定し、かつ、本オプションを指定した場合、入力要求のメッセージを出力せずに、セットされている磁気テープを処理対象として処理を行います。
磁気テープがセットされていない場合は、処理を行わずにコマンドを終了します。
退避データが複数の磁気テープにまたがる場合は、2本目以降の磁気テープがセットされているかの確認が行われます。
デバイス名にファイルへの絶対パス名を指定した場合、本オプションは無視されます。

-t ファイル名

リカバリするデータベースのDSI名を記述したファイル名を指定します。
ファイル名に指定できる長さは、OSで定義される最大バイト数までです。
以下にファイル内の形式を説明します。

  • LOADモードおよびFWモードの場合(バックアップ先直接指定)

    # コメント
    データベース名.DSI名
    退避先名@デバイス名 [ {;デバイス名} ... ]
    [ -r | -rb [ -freerate 空き率 ] ] [ -E リカバリ終了点名 | -dump ]
    <改行>
    データベース名.DSI名
    退避先名 [ @デバイス名 [ {;デバイス名} ... ] ]
    [ -r | -rb [ -freerate 空き率 ] ] [ -E リカバリ終了点名 | -dump ]
    <改行>

    先頭に“#”がある行は、コメント行として読みとばされます。
    このとき“#”は必ず行の先頭に記述する必要があります。
    ファイル内には空行を含むことができます。
    領域不足など、継続不可能なエラーが検出された場合には、コマンド全体を終了します。
    DSIのリカバリに失敗した場合、リカバリ可能なDSIの処理は継続して行います。
    リカバリ対象が表のDSIの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

データベース名.DSI名

リカバリするデータベースのDSI名を指定します。
ファイル内に異なるデータベースのDSIは記述できません。
また、ファイル内に異なるロググループのDSIも記述できません。

退避先名@デバイス名[{;デバイス名} ...]
  • 退避先名に、データのバックアップ時に指定した退避先名を指定した場合

    退避先名には、データのバックアップ時に指定した退避先名を指定します。
    退避先名の後を、“@”で区切り、バックアップ先のデバイス名を指定します。
    デバイス名の記述は“;”で区切ることにより複数指定できますが、複数記述の際には空白をはさむことはできません。
    2行目以降のデバイス名は省略可能です。
    省略した場合は、省略する直前に指定したデバイス名が指定されたものとみなします。
    退避先名に指定できる長さは、120バイトまでです。
    デバイス名に指定できる長さは、120バイトまでです。

  • 退避先名に、データのバックアップに使用したパイプ名を指定した場合

    退避先名には、データのバックアップに使用したパイプ名を指定します。
    退避先名の後を、“@”で区切り、バックアップ先のデバイス名を指定します。
    デバイス名には、“\\.\pipe”を指定します。
    2行目以降の退避先名にもパイプ名を指定しなければなりません。
    2行目以降のデバイス名は省略可能です。
    省略した場合は、省略する直前に指定したデバイス名が指定されたものとみなします。
    デバイス名を複数指定することはできませんので、注意してください。
    退避先名に指定できる長さは、120バイトまでです。
    デバイス名に指定できる長さは、120バイトまでです。

-r

リカバリ対象が表のDSIの場合は、関連するすべてのインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-rb

リカバリ対象が表のDSIの場合は、XML構造のインデックスを除く、すべてのBTREE構造のインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします(同期復元機能)。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-freerate 空き率

空き率として0~100の範囲内の数値を指定します。
これは表のDSIからインデックスのDSIリカバリ時にインデックスのDSI格納スペースの空き率となります。
本オプションを指定しない場合は、インデックスのDSI格納スペースの空き率は0となります。

-E リカバリ終了点名

rdbsetrpコマンドで指定した名称をリカバリの終了点として指定します。
これを指定した場合、rdbsetrpコマンド設定時に出力された位置までログの適用が行われます。

-dump

rdbdmpコマンド実行時に-cオプションを指定してバックアップしたデータと、アーカイブログを使用して、退避データ取得時点の状態にリカバリする場合に指定します。
なお、本オプションは、FWモードの場合のみ指定することができますが、-pオプション、-Eオプションおよび-f initオプションと同時に指定することはできません。

  • LOADモードおよびFWモードの場合(バックアップ制御ファイル指定)

    # コメント
    データベース名.DSI名
    バックアップ制御ファイルの絶対パス名
    [ -r | -rb [ -freerate 空き率 ] ] [ -E リカバリ終了点名 | -dump ]
    <改行>
    データベース名.DSI名
    [バックアップ制御ファイルの絶対パス名]
    [ -r | -rb [ -freerate 空き率 ] ] [ -E リカバリ終了点名 | -dump ]
    <改行>

    先頭に“#”がある行は、コメント行として読みとばされます。
    このとき“#”は必ず行の先頭に記述する必要があります。
    ファイル内には空行を含むことができます。
    領域不足など、継続不可能なエラーが検出された場合には、コマンド全体を終了します。
    DSIのリカバリに失敗した場合、リカバリ可能なDSIの処理は継続して行います。
    リカバリ対象が表のDSIの場合は、インデックスのDSIと整合性を保証するため、-rbオプションが指定されたものとして動作します。

データベース名.DSI名

リカバリするデータベースのDSI名を指定します。
ファイル内に異なるデータベースのDSIは記述できません。
また、ファイル内に異なるロググループのDSIも記述できません。

バックアップ制御ファイルの絶対パス名

バックアップ制御ファイルの絶対パス名を指定します。
ファイル名に指定できる長さは、OSで定義される最大バイト数までです。
バックアップ制御ファイルの内容は、-fオプションのバックアップ制御ファイル指定の説明を参照してください。

-r

リカバリ対象が表のDSIの場合は、関連するすべてのインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-rb

リカバリ対象が表のDSIの場合は、XML構造のインデックスを除く、すべてのBTREE構造のインデックスのDSIを、指定した表のDSIの内容をもとにリカバリします(同期復元機能)。
リカバリ対象が表のDSIの場合にのみ有効となり、インデックスのDSI指定時には無視されます。
本オプションは、旧バージョンとの互換として存在しています。

-freerate 空き率

空き率として0~100の範囲内の数値を指定します。
これは表のDSIからインデックスのDSIリカバリ時にインデックスのDSI格納スペースの空き率となります。
本オプションを指定しない場合は、インデックスのDSI格納スペースの空き率は0となります。

-E リカバリ終了点名

rdbsetrpコマンドで指定した名称をリカバリの終了点として指定します。
これを指定した場合、rdbsetrpコマンド設定時に出力された位置までログの適用が行われます。

-dump

rdbdmpコマンド実行時に-cオプションを指定してバックアップしたデータと、アーカイブログを使用して、退避データ取得時点の状態にリカバリする場合に指定します。
なお、本オプションは、FWモードの場合のみ指定することができますが、-pオプション、-Eオプションおよび-f initオプションと同時に指定することはできません。

  • DIRモードの場合

    #コメント
    データベース名.DSI名

    先頭に“#”がある行は、コメント行として読みとばされます。
    このとき“#”は必ず行の先頭に記述する必要があります。
    ファイル内には空行を含むことができます。
    領域不足など、継続不可能なエラーが検出された場合は、その時点で処理が中止されます。
    この場合、エラー検出までに行われた処理は有効となります。
    各行の処理中に、指定形式の誤りなど、継続可能なエラーが検出された場合は、メッセージが表示され、次の行から処理が継続されます。

データベース名.DSI名

リカバリするデータベースのDSI名を指定します。
表のDSIのみが指定可能です。
ファイル内に異なるデータベースのDSIは指定できません。
また、ファイル内に異なるロググループのDSIも記述できません。

使用例

例1

LOADモードにより、在庫管理DBに属する在庫表DSIをリカバリします。

rdbrcv -L -i 在庫管理DB.在庫表DSI
       -f stock@c:\rdb\save -w c:\rdb\tmp
例2

FWモードにより、表のDSIおよび表のDSIに属するインデックスのDSI(XML構造を除く)をリカバリします。

rdbrcv -F -i 在庫管理DB.在庫表DSI
       -f stock@c:\rdb\save 
       -a arc0001@c:\rdb\save;arc0002@c:\rdb\save
       -w c:\rdb\tmp 
例3

DIRモードにより、RDBディレクトリファイルのデータベース資源のアクセス情報をリカバリします。

rdbrcv -D -i 在庫管理DB.在庫表DSI
例4

ファイル指定により、複数のDSIを一括してリカバリします。

rdbrcv -L -t c:\rdb2\dsi.txt -w c:\rdb\tmp
ファイル(dsi.txt)の例
在庫管理DB.在庫表DSI1 dmp1@c:\rdb\save
在庫管理DB.在庫表DSI2 dmp2
在庫管理DB.在庫表DSI3 dmp3
例5

バックアップ制御ファイル指定によりエクステント形式の退避データを使用してDSIをリカバリします。

rdbrcv -F -i 在庫管理DB.在庫表DSI
       -f c:\rdb2\backup.txt -w c:\rdb\tmp
バックアップ制御ファイル(backup.txt)の例
在庫管理DB.DBSP_1 c:\rdb2\backup\backup_1
在庫管理DB.DBSP_2 c:\rdb2\backup\backup_2
在庫管理DB.DBSP_3 c:\rdb2\backup\backup_3
例6

REFモードにより、DSIをリカバリします。

rdbrcv -R -p 在庫管理DB.DBSP_1 -f c:\rdb2\backup

終了ステータス

以下の終了ステータスが返されます。

0 : 正常終了
0以外 : 異常終了

注意