サポートと今すぐチャット
サポートとのチャット

SharePlex 11.4 - リファレンス・ガイド

このガイドについて このガイドで使用される表記規則 Oracle用SharePlexコマンド SharePlexパラメーター PostgreSQL用SharePlexコマンド PostgreSQL用SharePlexパラメーター 一般SharePlexユーティリティ Oracleクラウドインフラストラクチャ SharePlex環境変数

PostgreSQL用パーティションの追加

add partitionコマンドを使用すると、水平分割レプリケーションを設定するときに、パーティションスキームに行パーティションを追加できます。作成する行パーティションごとに、add partitionを発行します。

このコマンドは、以下の必須コンポーネントを含む、パーティション作成に必要なすべての情報を取得します。

  • パーティションスキーム名。新しいパーティションスキームを作成するには、そのスキームの最初の行パーティションを作成するadd partitionコマンドでスキームの名前を指定します。SharePlexは自動的にパーティションスキームを作成します。その後、そのパーティションスキームに行パーティションを追加するときに、その名前を指定します。
  • 行パーティションで指定された行のルーティング。

既にレプリケートされているテーブルにコマンドが影響する場合は、設定ファイルを再アクティベーションします。SharePlexは設定が変更されたテーブルのみをロックします。

水平分割レプリケーションの設定方法の詳細については、『SharePlex管理ガイド』を参照してください。

用途

サポート対象のソース:

PostgreSQLオンプレミスAmazon RDS for PostgreSQL、Amazon Aurora for PostgreSQL、Azure Database for PostgreSQL Flexible Server、Google Cloud SQL for PostgreSQL

サポート対象のターゲット: PostgreSQL、Oracle、SQL Server、Kafka、Amazon RDS for PostgreSQL、Amazon Aurora for PostgreSQL、Azure Database for PostgreSQL Flexible Server、Google Cloud SQL for PostgreSQL
発行場所: ソースシステム
関連コマンド: modify partitiondrop partitiondrop partition schemeview partitions

構文

基本コマンド コマンドオプション

add partition toscheme_name

set

{condition = column_condition |

route = routing_map

[and name =partition_name]

[and tablename =target_table]

[and description =description]

構文の説明
コンポーネント 説明
to scheme_name

toは、行パーティションがscheme_nameに追加されることを示す必須キーワードです。

scheme_nameはパーティションスキームの名前です。パーティションスキームは、最初に発行するadd partitionコマンドによって作成されます。このコマンドは、パーティション化する最初の行のセットも指定します。

水平分割を多用する場合は、パーティションスキームの命名規則を確立しておくことをお勧めします。

set

行パーティションの定義を開始する必須キーワード。

condition = column_condition

列条件に基づいて行パーティションを作成します。条件は引用符で囲む必要があります。((region_id = West) and region_id is not null)のような標準的なWHERE条件構文を使用します。

route = routing_map

このパーティションのルート。これは以下のいずれかになります。

列条件に基づくパーティション:

標準のSharePlexルーティングマップを指定します。例: sysB@r.dbnamesysB:q1@r.dbnameまたはsysB@r.dbname+sysC@r.dbname複合ルーティングマップ

異なる名前を持つ複数のターゲットテーブルにパーティションをルーティングするには、以下の手順を実行します。

  • 異なるターゲット名ごとにadd partitionコマンドを個別に発行します。tablenameオプションを使って名前を指定します。
  • 設定ファイルで、このパーティションスキームを使用するエントリのターゲットテーブルとして、これらのターゲットテーブルのいずれかを指定します。SharePlexは、設定が有効化されると他の名前を検出します。
  • SP_ORD_FIRST_FINDパラメーターを0に設定し、パーティションスキームのすべての列条件をSharePlexでチェックするようにします。デフォルトでは、SharePlexは、特定の行変更がパーティションスキームの1つの列条件のみを満たすことを想定しています。
name = name

推奨このパーティションの短い名前。このオプションは、列条件に基づくパーティションにのみ有効です。名前を付けておくと、将来パーティションを変更したり削除したりする必要が生じたときに、長い列の条件を入力する必要がなくなります。

tablename = owner.table

オプションこのオプションは、ターゲットテーブルが複数あり、そのうちの1つ以上が異なる名前である場合に使用します。名前ごとにadd partitionコマンドを個別に発行します。

テーブル名は完全修飾名でなければなりません。大文字と小文字が区別される場合は、名前を引用符で囲んで指定する必要があります。

例:

add partition to scheme1 set name = p1 and condition = "C1 > 200" and route = sysb:p1@r.dbname and tablename = myschema.mytable

description = description オプションこのパーティションの説明。
列の条件に基づく行のパーティション

異なる行のセットを異なるpostキューにルーティング:

sp_ctrl> add partition to scheme1 set name = q1 and condition = "C1 >= 200" and route = sysb:q1@r.dbname

sp_ctrl> add partition to scheme1 set name = q2 and condition = "C1 < 200" and route = sysb:q2@r.dbname

異なる行のセットを、異なるターゲットシステムおよびソースと異なるテーブル名にルーティング:

sp_ctrl> add partition to scheme1 set name = east and condition = "area = east" and route = sys1e@r.dbname and tablename = schema1.targ

sp_ctrl> add partition to scheme1 set name = west and condition = "area = west" and route = sys2w@r.dbname and tablename = schema2.targ

PostgreSQLのcancelコマンド

cancelコマンドは、実行中のcompareおよびrepairコマンドジョブをキャンセルするために使用します。

ジョブをキャンセルするには、キャンセルするジョブのジョブIDを指定する必要があります。ジョブIDは、compareおよびrepairジョブを開始するコマンドを発行したときに、そのジョブから返されます。

sp_ctrl>repair using 1elliot

repairing 7 of 7 objects

repair started; job id 408

または、job statusコマンドを発行することで、直近にストリームされたジョブのジョブIDを取得することもできます。

sp_ctrl>job status

Job ID: 408

PID: 11527

Host: prodsys

Started: 22-FEB-15 18:08:09

Job Type: Repair

Status: Processing - 0 objects completed

用途

サポート対象のソース: PostgreSQL
サポート対象のターゲット: PostgreSQL
認証レベル: オペレーター2
発行場所: ソースシステム
関連コマンド: comparerepair

構文

基本コマンド リモートオプション
cancel job_id

[ on host |

on host:portnumber |

on login/password@host |

on login/password@host:portnumber ]

構文の説明
コンポーネント 説明
jobID

キャンセルするジョブのID。

:

sp_ctrl>cancel 407

リモートオプション

これらのオプションにより、リモートマシンにコマンドを発行したり、ログイン名、パスワード、ポート番号、またはそれらの組み合わせを含むコマンドをスクリプト化したりすることができます。

オプション 説明
on host

リモートシステム現在のsp_ctrlセッションが実行されているシステム以外でコマンドを実行します。リモートシステムのログイン認証情報の入力を求めるプロンプトが表示されます。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA

on host:portnumber

リモートログインとポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA:8304

on login/password@host

リモートログイン、パスワード、ホスト名を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例:sp_ctrl(sysB)>status on john/spot5489@SysA

on login/password@host:portnumber

リモートログイン、パスワード、ホスト名、ポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on john/spot5489@SysA:8304

PostgreSQLのclear historyコマンド

clear historyコマンドは、compareおよびrepairコマンドの古いジョブから情報とログを削除するために使用します。

これらのジョブは、ソースシステムとターゲットシステムにログファイルを生成します。デフォルトでは、ジョブがSP_SYS_JOB_HISTORY_RETENTIONパラメーターで設定された値より古くなると、ジョブ情報とログファイルが消去されます。clear historyコマンドを使用すると、特定のジョブやテーブル、または特定の期間を経過したすべてのジョブについて、ジョブ情報とログをオンデマンドでクリアすることができます。

用途

サポート対象のソース: PostgreSQL
サポート対象のターゲット: PostgreSQL
認証レベル: オペレーター2
発行場所: ソースシステム
関連コマンド: comparerepair

構文

基本コマンド コマンドオプション リモートオプション

clear history

{ all |

source_owner.source_table |

age days |

jobID }

[for r.dbid]

[ on host |

on host:portnumber |

on login/password@host |

on login/password@host:portnumber ]

構文の説明
コンポーネント 説明
all

すべてのジョブとログ履歴を削除します。

:

sp_ctrl(sysA)> clear history all

source_owner.source_table

特定のテーブルの履歴を削除します。履歴はSP_SYS_JOB_HISTORY_RETENTIONパラメーターに従って削除されます。

:

sp_ctrl(sysA)> clear history clear history user2.employee

age days

指定した日数より古いジョブ履歴を削除します。

:

sp_ctrl(sysA)> clear history age 10

jobID

指定されたジョブIDjob statusコマンドで取得のジョブを削除します。履歴はSP_SYS_JOB_HISTORY_RETENTIONパラメーターに従って削除されます。

例:

sp_ctrl(sysA)> clear history jobID

for r.dbid

オプション。アクティブな設定がない場合、または複数のアクティブな設定がある状況でclear historyコマンドを使用するために使用できます。いずれの場合も、forオプションを使用してソースSIDを指定する必要があります。

:

sp_ctrl(sysA)>clear history all for r.dbid

リモートオプション

これらのオプションにより、リモートマシンにコマンドを発行したり、ログイン名、パスワード、ポート番号、またはそれらの組み合わせを含むコマンドをスクリプト化したりすることができます。

オプション 説明
on host

リモートシステム現在のsp_ctrlセッションが実行されているシステム以外でコマンドを実行します。リモートシステムのログイン認証情報の入力を求めるプロンプトが表示されます。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA

on host:portnumber

リモートログインとポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA:8304

on login/password@host

リモートログイン、パスワード、ホスト名を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例:sp_ctrl(sysB)>status on john/spot5489@SysA

on login/password@host:portnumber

リモートログイン、パスワード、ホスト名、ポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on john/spot5489@SysA:8304

PostgreSQLのclear statusコマンド

ステータスデータベースから古い警告メッセージを削除するには、clear statusコマンドを使用します。

このコマンドを使用するには:

  1. show statusdb detailコマンドを実行して、消去できるメッセージを見つけます。消去可能なメッセージは、Clear列にYesが指定されています。
  2. 一部のメッセージだけ消去したい場合は、消去する各メッセージのステータスIDをメモしておきます。
  3. ステータスIDごとにclear statusコマンドを発行するか、all引数を使用して、消去可能なすべてのメッセージを一度に削除します。

SharePlexは、消去されたメッセージを識別するメッセージをイベントログに書き込みます。

このコマンドは、デフォルトシステムのステータスデータベースからメッセージを消去します。別のシステムのステータスデータベースからメッセージを消去するには、[onhost]オプションを使用します。

注: すべてのメッセージを消去できるわけではありません。

用途

サポート対象のソース: PostgreSQL
サポート対象のターゲット: PostgreSQL
認証レベル: オペレーター2
発行対象: ソースまたはターゲットシステム
関連コマンド: show statusdb

構文

基本コマンド リモートオプション
clear status {statusID| all}

[ on host |

on host:portnumber |

on login/password@host |

on login/password@host:portnumber ]

構文の説明
コンポーネント 説明
statusID

削除したい個のメッセージのSharePlex割り当てIDshow statusdbコマンドを使用して取得

:

sp_ctrl(sysA)>clear status 20

all

この引数を使用すると、消去可能なメッセージがすべて削除されます。

:

sp_ctrl(sysA)>clear status all

リモートオプション

これらのオプションにより、リモートマシンにコマンドを発行したり、ログイン名、パスワード、ポート番号、またはそれらの組み合わせを含むコマンドをスクリプト化したりすることができます。

オプション 説明
on host

リモートシステム現在のsp_ctrlセッションが実行されているシステム以外でコマンドを実行します。リモートシステムのログイン認証情報の入力を求めるプロンプトが表示されます。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA

on host:portnumber

リモートログインとポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on SysA:8304

on login/password@host

リモートログイン、パスワード、ホスト名を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例:sp_ctrl(sysB)>status on john/spot5489@SysA

on login/password@host:portnumber

リモートログイン、パスワード、ホスト名、ポート番号を指定する必要がある場合は、リモートシステムでコマンドを実行します。使用する場合は、コマンド構文の最後の構成要素でなければなりません。

例: sp_ctrl(sysB)>status on john/spot5489@SysA:8304

関連ドキュメント

The document was helpful.

評価を選択

I easily found the information I needed.

評価を選択