Hitachi

Hitachi Advanced Data Binder コマンドリファレンス


6.2.1 指定形式およびオプションの説明

チャンクの状態を変更する表が1つの場合と,2つ以上ある場合とで指定形式が異なります。チャンクの状態を変更する表が2つ以上ある場合は,複数の表のチャンクの状態の変更内容を指定したチャンクの状態の一括変更設定ファイルを準備し,チャンクの状態を一括して変更します。

〈この項の構成〉

(1) 指定形式

■チャンクの状態を変更する表が1つの場合

adbchgchunkstatus
    -u 認可識別子
  〔-p パスワード  〔--timeout タイムアウト時間
  〔-w 待機状態に変更するチャンクのチャンクID〔,待機状態に変更するチャンクのチャンクID〕…〕
  〔-n 通常状態に変更するチャンクのチャンクID〔,通常状態に変更するチャンクのチャンクID〕…〕
    処理対象表
重要
  • -wオプションまたは-nオプションのどちらかは必ず指定してください。また,両方指定することもできます。

  • 処理対象表は,必ずオプションの最後に指定してください。

  • -mオプションは指定できません。

■チャンクの状態を変更する表が2つ以上ある場合

adbchgchunkstatus
    -u 認可識別子
  〔-p パスワード〕
  〔--timeout タイムアウト時間〕
    -m チャンクの状態の一括変更設定ファイル名
重要

-wオプション,-nオプション,および処理対象表は指定できません。

(2) オプションの説明

-u 認可識別子

〜〈文字列〉((1〜100バイト))

adbchgchunkstatusコマンドを実行するHADBユーザの認可識別子を指定します。adbchgchunkstatusコマンドを実行するには,次の2つの権限を持っている必要があります。

  • CONNECT権限

  • 処理対象表に対するCHANGE CHUNK STATUS権限

このオプションに指定する認可識別子は,1~100バイトの範囲で指定してください。ただし,認可識別子を囲む二重引用符は,1~100バイトには含みません。

重要

認可識別子の文字列中に英小文字または\がある場合は,認可識別子の指定規則を必ず確認してください。認可識別子の指定規則については,「1.4.2 認可識別子およびパスワードの指定規則」を参照してください。

-p パスワード

〜〈文字列〉((1〜255バイト))

-uオプションに指定した認可識別子のパスワードを指定します。

重要

パスワードの文字列中に,二重引用符(")やストローク(|)など,OSやシェルが別の意味で使用している文字がある場合は,パスワードの指定規則を必ず確認してください。パスワードの指定規則については,「1.4.2 認可識別子およびパスワードの指定規則」を参照してください。

なお,このオプションを省略してadbchgchunkstatusコマンドを実行すると,パスワードの入力を求める応答メッセージが表示されます。バックグラウンドで実行する場合など,標準入力からパスワードを入力できない環境では,このオプションを省略しないでください。

--timeout タイムアウト時間

〜〈整数〉((0〜65,535))《0》(単位:秒)

adbchgchunkstatusコマンドがタイムアウトになるまでの時間を指定します。

adbchgchunkstatusコマンドの実行時間がこのオプションで指定した時間を超えた場合,adbchgchunkstatusコマンドの処理はキャンセルされます。

このオプションの指定を省略した場合,またはこのオプションに0を指定した場合,adbchgchunkstatusコマンドのタイムアウト時間は設定されません。adbchgchunkstatusコマンドの処理に時間が掛かっても,タイムアウトしないでコマンドの処理が続行されます。

メモ

adbchgchunkstatusコマンドの実行時間が長くなるとシステムの運用に支障が出る場合は,タイムアウト時間の指定を検討してください。

■マルチノード機能を使用している場合

次に示す状態のときは,このオプションで指定したタイムアウト時間が経過しても,adbchgchunkstatusコマンドの処理はすぐにはキャンセルされません。次に示す状態が解消されたあとで,adbchgchunkstatusコマンドの処理がキャンセルされます。

  • プライマリノードの切り替え処理中

  • ノードの復帰処理中

  • ワーカーノードの追加処理中

  • 他ノードで実行中のトランザクションの終了待ち中

●-w 待機状態に変更するチャンクのチャンクID〔,待機状態に変更するチャンクのチャンクID〕…

〜〈整数〉((1〜9,223,372,036,854,775,807))

待機状態に変更するチャンクのチャンクIDを指定します。複数のチャンクIDを指定する場合は,チャンクIDをコンマ( , )で区切ったり,ハイフン(-)を指定したりしてください。

  • 例1:チャンクIDが1,3,5のチャンクを待機状態にする場合

    -w 1,3,5

  • 例2:チャンクIDが1〜5のチャンクを待機状態にする場合

    -w 1-5

  • 例3:チャンクIDが1,3,5〜10,15のチャンクを待機状態にする場合

    -w 1,3,5-10,15

処理対象表に存在しないチャンクIDや,通常状態でないチャンクのチャンクIDを指定した場合,その指定は無視されます(状態を変更できるチャンクだけを対象とします)。ただし,状態を変更できるチャンクが1つもない場合はエラーになります。

-n 通常状態に変更するチャンクのチャンクID〔,通常状態に変更するチャンクのチャンクID〕…

〜〈整数〉((1〜9,223,372,036,854,775,807))

通常状態に変更するチャンクのチャンクIDを指定します。複数のチャンクIDを指定する場合は,チャンクIDをコンマ( , )で区切ったり,ハイフン(-)を指定したりしてください。

  • 例1:チャンクIDが1,3,5のチャンクを通常状態にする場合

    -n 1,3,5

  • 例2:チャンクIDが1〜5のチャンクを通常状態にする場合

    -n 1-5

  • 例3:チャンクIDが1,3,5〜10,15のチャンクを通常状態にする場合

    -n 1,3,5-10,15

処理対象表に存在しないチャンクIDや,待機状態でないチャンクのチャンクIDを指定した場合,その指定は無視されます(状態を変更できるチャンクだけを対象とします)。ただし,状態を変更できるチャンクが1つもない場合はエラーになります。

処理対象表

チャンクの状態を変更する表の表名を指定します。マルチチャンク表を指定してください。

指定規則を次に示します。

  • スキーマ名.表識別子」の形式で指定します。

    自分が所有している表を指定する場合は,スキーマ名を省略できます。ほかのHADBユーザが所有している表を指定する場合は,スキーマ名を指定してください。

  • スキーマ名または表識別子中に,英小文字または\がある場合の指定規則については,「1.4.3 表名の指定規則」を参照してください。

  • CHANGE CHUNK STATUS権限を持っている表を指定できます。

  • シングルチャンク表は指定できません。

  • ビュー表は指定できません。

  • 更新不可状態の表は指定できません。

  • adbimportコマンドまたはadbidxrebuildコマンドの実行が中断している表は指定できません。

-m チャンクの状態の一括変更設定ファイル名

〜〈OSパス名〉((2〜510バイト))

複数の表のチャンクの状態を一括して変更したい場合に,このオプションを指定してください。

このオプションには,チャンクの状態の一括変更設定ファイルの絶対パス名を指定します。チャンクの状態の一括変更設定ファイルとは,複数の表のチャンクの状態の変更内容を指定したファイルです。チャンクの状態の一括変更設定ファイルの指定形式については,「(3) チャンクの状態の一括変更設定ファイルの指定規則」を参照してください。

(3) チャンクの状態の一括変更設定ファイルの指定規則

2つ以上の表のチャンクの状態を一括して変更する場合,チャンクの状態の一括変更設定ファイルを作成します。チャンクの状態の一括変更設定ファイルには,複数の表のチャンクの状態の変更内容を指定します。

■チャンクの状態の一括変更設定ファイルの指定形式

{{
adbchunkstatus
    -t 処理対象表
  〔-w {待機状態に変更するチャンクのチャンクID〔,待機状態に変更するチャンクのチャンクID〕…
        |ALL}〕
  〔-n {通常状態に変更するチャンクのチャンクID〔,通常状態に変更するチャンクのチャンクID〕…
        |ALL}〕
}}

上記のチャンクの状態の一括変更設定ファイルの指定規則は,サーバ定義と同じです。サーバ定義の指定規則については,マニュアルHADB システム構築・運用ガイドサーバ定義の文法規則を参照してください。

■指定例

TABLE01および表TABLE02のチャンクの状態を変更する指定例を次に示します。

adbchunkstatus \
  -t TABLE01 \
  -w 10,11,20,21

adbchunkstatus \
  -t TABLE02 \
  -w 1,2,3,10-20,30 \
  -n 50-59
■指定規則
  • 指定できる表の数は,最大32です。

  • 表を1つだけ指定して,チャンクの状態を変更することもできます。

  • チャンクの状態の一括変更設定ファイル中には,同じ処理対象表を2つ以上指定できません。

  • 1つの処理対象表に対して,-wオプションまたは-nオプションのどちらかは必ず指定してください。また,両方指定することもできます。

■指定形式の説明
adbchunkstatus

このオペランドにはチャンクの状態の変更内容を指定します。チャンクの状態を変更したい表の数だけこのオペランドを指定してください。

このオペランドは,1~32個指定できます。

-t 処理対象表

〜〈文字列〉((1〜205バイト))

チャンクの状態を変更する表の表名を指定します。レギュラーマルチチャンク表を指定してください。

指定規則を次に示します。

  • 表名の指定規則については,マニュアルHADB SQLリファレンス名前の指定を参照してください。なお,表名に英小文字がある場合は,区切り識別子の形式で表名を指定する必要がありますが,二重引用符(")で囲むのではなく,バックスラッシュと二重引用符(\")で囲んでください。

    (例)表名が「ADBUser.Table01」の場合

    \"ADBUser\".\"Table01\"

    また,表名に空白が含まれる場合は,二重引用符(")で全体を囲んでください。

    (例)表名が「ADBUser.Table△01」の場合

    "\"ADBUser\".\"Table△01\""

    △:半角空白

  • CHANGE CHUNK STATUS権限を持っている表を指定できます。

  • アーカイブマルチチャンク表は指定できません。

  • シングルチャンク表は指定できません。

  • ビュー表は指定できません。

  • 更新不可状態の表は指定できません。

  • adbimportコマンドまたはadbidxrebuildコマンドの実行が中断している表は指定できません。

●-w {待機状態に変更するチャンクのチャンクID〔,待機状態に変更するチャンクのチャンクID〕…|ALL}

〜〈文字列〉

待機状態に変更するチャンクのチャンクIDを指定します。処理対象表に存在するすべての通常状態のチャンクを待機状態に変更する場合は,ALLを指定してください。

チャンクIDの指定規則を次に示します。

  • チャンクIDとして指定できる数値は,1〜9,223,372,036,854,775,807です。

  • 複数のチャンクIDを指定する場合は,チャンクIDをコンマ( , )で区切ったり,ハイフン(-)を指定したりしてください。

  • 1つの待機状態に変更するチャンクのチャンクIDに指定できる文字数は,1~39文字です。

処理対象表に存在しないチャンクIDや,通常状態でないチャンクのチャンクIDを指定した場合,その指定は無視されます(状態を変更できるチャンクだけを対象とします)。

-n {通常状態に変更するチャンクのチャンクID〔,通常状態に変更するチャンクのチャンクID〕…|ALL}

〜〈文字列〉

通常状態に変更するチャンクのチャンクIDを指定します。処理対象表に存在するすべての待機状態のチャンクを通常状態に変更する場合は,ALLを指定してください。

チャンクIDの指定規則を次に示します。

  • チャンクIDとして指定できる数値は,1〜9,223,372,036,854,775,807です。

  • 複数のチャンクIDを指定する場合は,チャンクIDをコンマ( , )で区切ったり,ハイフン(-)を指定したりしてください。

  • 1つの通常状態に変更するチャンクのチャンクIDに指定できる文字数は,1~39文字です。

処理対象表に存在しないチャンクIDや,待機状態でないチャンクのチャンクIDを指定した場合,その指定は無視されます(状態を変更できるチャンクだけを対象とします)。

(4) -wおよび-nオプションの指定規則

次に示す-wおよび-nオプションの指定規則について説明します。

■共通の指定規則

■チャンクの状態を変更する表が1つの場合

■チャンクの状態を変更する表が2つ以上ある場合(チャンクの状態の一括変更設定ファイル)