Chat now with support
Chat with Support

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

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

データベース・セットアップ・ユーティリティ

データベース・セットアップ・ユーティリティ

データベース・セットアップ・ユーティリティは、SharePlex接続を許可し、レプリケーションをサポートする必要なデータベースコンポーネントを確立するために、ソースまたはターゲットデータベースを自動的に設定します。

各種データベースユーティリティのセットアップ方法の詳細については、『SharePlex インストールおよびセットアップガイド』の「データベース・セットアップ・ユーティリティ」のセクションを参照してください。

Oracleクラウドインフラストラクチャ

内容

 

Oracle Cloud-ExaCSとDBCSのデータベースセットアップ

Oracle用データベース・セットアップ・ユーティリティOra_setupを使用して、SharePlexをOracleユーザとして確立し、必要なSharePlexデータベースオブジェクトを作成します。このセットアップユーティリティでは、以下が作成されます。

  • SharePlexアカウント
  • SharePlexが使用し、SharePlexアカウントが所有するテーブルとその他のオブジェクト
  • SharePlexユーザのデフォルト接続

セットアップユーティリティを実行する前に、このトピックの内容をすべて確認することをお勧めします。

サポート対象データベース

サポート対象プラットフォーム上のOracleソースまたはターゲット

Oracleのセットアップを実行するタイミング

SharePlexのインストール時にこのユーティリティを実行するかどうかは、データベースがソース、中間、ターゲットのいずれであるか、またデータをどのように同期させるかによって異なります。初期同期手順については『SharePlex管理ガイド』を参照してください。

システムのタイプ Oracleのセットアップを実行するタイミング

ソースシステム

SharePlexのインストール中

中間システム 中間システムはカスケード構成で使用されます。ここでは、SharePlexがデータを1つまたは複数のリモートシステムにレプリケートし、そのデータを中間システムから最終ターゲットに送信します。中間システム上のデータベースにデータをポストするようにSharePlexを設定し、ホットバックアップを使用してそのシステムとターゲットでデータを確立する場合は、中間システムまたはターゲットシステムでデータベース・セットアップ・ユーティリティを実行しないでください。このユーティリティは、初期同期手順を実施するときに実行します。

ターゲットシステム

レプリケーションをアクティベーションする準備ができたときに、ソースとターゲットのデータを同期するために使用する方法によって異なります。

  • 移動可能なテーブルスペースまたはコールドコピーexport/import、テープからの格納/リストア、FTPなどを使用する場合は、データベース・セットアップ・ユーティリティをSharePlexのインストール中に実行してください。
  • ホットバックアップを使用してターゲットデータを確立する場合は、データベース・セットアップ・ユーティリティを実行しないでください。このユーティリティは、初期同期手順を実施するときに実行します。

    注意: バックアップとリカバリの前にデータベース・セットアップ・ユーティリティを実行すると、セットアップが上書きされるため、バックアップとリカバリの後に再度実行する必要があります。

サポート対象のOracle接続

セットアップユーティリティでは、SharePlexユーザがデータベースへの接続時に使用する以下のいずれかの接続を設定できます。

データベースのタイプ connection
ASMを使用したPDB

PDBにはTNSエイリアス、ASMインスタンスにはTNSまたはBequeathのいずれかを使用します。

必要な実行の権限

データベース・セットアップ・ユーティリティを実行するユーザには以下の権限が必要です。

Amazon RDSのソースまたはターゲット

セットアップユーティリティを実行するユーザは、Oracle RDSインスタンスの作成時に作成されたプライマリユーザである必要があります。セットアップ中にこのユーザに対して入力が求められます。

非マルチテナント標準データベース:

セットアップユーティリティを実行するユーザにはDBA権限が必要です。

マルチテナントデータベース:

セットアップユーティリティを実行するユーザはSYSDBAの権限を持っている必要がありますが推奨、少なくともsys.users$およびsys.enc$の権限を持つDBAユーザでなければなりません。

SharePlexユーザには少なくとも以下の権限が必要です。

create user c##sp_admin identified by sp_admin;

grant dba to c##sp_admin container=ALL;

grant select on sys.user$ to c##sp_admin with grant option container=ALL;

SharePlexに付与される権限

  • データベース・セットアップ・ユーティリティは、SharePlexデータベースユーザに以下の権限を付与します。

    付与される権限

    説明

    DBAロール

    データベース・セットアップ・ユーティリティは、DBAロールと無制限のリソース権限、テーブルスペース権限、およびREDOログの読み取り権限を付与します。

    デフォルトのOracleプロファイル

    デフォルトでこのプロファイルには、Oracleによって最初に割り当てられた無制限のリソース権限があります。

    付与

    SharePlexには以下の権限が付与されます。

    • O7_DICTIONARY_ACCESSIBILITYがFALSEに設定されている場合、DBAロールの外でデータ辞書にアクセスするには:

      grant select any dictionary toSharePlexUser;

    • DDLをレプリケートするには:

      grant select any table toSharePlexUserwith admin option;

      grant create any view toSharePlexUserwith admin option;

    要件

    • Oracleのセットアップを実行するシステムにデータベースクライアントをインストールします。データベースで使用する適切なクライアントのバージョンについては、Oracleのドキュメントを参照してください。
    • SharePlexのレプリケーション設定のすべてのソースおよびターゲットOracleインスタンスで、データベース・セットアップ・ユーティリティを実行します。
    • 統合レプリケーショントポロジ、または複数の変数データディレクトリを持つ他のトポロジでは、各変数データディレクトリに対してデータベース・セットアップ・ユーティリティを実行します。
    • SharePlexは、ローカルBEQUEATH接続またはTNSエイリアスを使用したリモート接続をサポートしています。使用する接続に必要な接続値をOracleのセットアップで指定する準備をしてください。TNSを使用する場合は、セットアップを実行する前にtnsnames.oraファイルを設定する必要があります。

    • Oracleデータベースがマルチテナント・コンテナ・データベースの場合、レプリケーションシナリオに関連する各プラガブルデータベースについてデータベース・セットアップ・ユーティリティを実行します。SharePlexユーザおよびスキーマオブジェクトが各PDBに存在していなければなりません。
    • アクティブな設定があるときにデータベース・セットアップ・ユーティリティを実行すると、SharePlexの内部テーブルをインストールまたは更新するためにセットアップによって実行されるDDLがターゲットにレプリケートされます。この問題を回避するには、ユーティリティを実行する前にSP_OCT_REPLICATE_ALL_DDLパラメーターを0に設定し、セットアップ完了後にパラメーターを以前の設定に戻します。このパラメーターは即座に有効になります。

    SharePlexスキーマのストレージ要件

    Oracleのデータベース・セットアップ・ユーティリティは、SharePlexで使用するためにいくつかのデータベースオブジェクトをインストールします。これらのオブジェクトのストレージ要件は、Oracleのセットアップを実行する前に満たしておく必要があります。以下の表を参照してください。

    ストレージ 説明
    SharePlexオブジェクトテーブルスペース

    データベース・セットアップ・ユーティリティは、選択したテーブルスペースにいくつかのテーブルをインストールします。SHAREPLEX_LOBMAPテーブル以外は、テーブルスペースのデフォルトのストレージ設定を使用します。

    SHAREPLEX_LOBMAPテーブルには、行の外に格納されたLOBのエントリが含まれています。これは、1 MBのINITIALエクステント、1 MBのNEXTエクステント、および10のPCTINCREASEで作成されます。MAXEXTENTSは120で、テーブルの最大許容値サイズは120 MBです。

    推奨アクション: プライマリキーと一意キーのサプリメンタルロギングを有効にしている場合、SP_OCT_ENABLE_LOBMAPパラメーターを0に設定すると、SHAREPLEX_LOBMAPテーブルには何も保存されません。この場合、サイズが大きくなることを考慮する必要はありません。Readプロセスのパフォーマンスを最大化するために、プライマリキーと一意キーのサプリメンタルロギングを有効にすることを推奨します。

    代替アクション: 通常、デフォルトのストレージはSHAREPLEX_LOBMAPに十分であり、400万以上のLOBエントリが許可されます。複製するOracleテーブルに、頻繁に挿入または更新される多数のLOB列がある場合は、SharePlexのテーブルスペースのサイズを適宜大きくすることを検討してください。このテーブルが、SharePlexの他のテーブルとテーブルスペースを共有していることを考慮してください。

    データベースがコスト・ベース・オプティマイザCBOを使用しており、SharePlexが処理するテーブルに多数のLOBが含まれる場合は、SHAREPLEX_LOBMAPテーブルを分析スケジュールに組み込みます。

    注意: SharePlexを新規にインストールしても、以前のインストールからストレージパラメーターは変更されません。

    SharePlex一時テーブルスペース

    データベース・セットアップ・ユーティリティでは、compareコマンドで実行されるソートを含む、ソートやその他の操作に使用するSharePlex用の一時テーブルスペースの入力を求めるプロンプトが表示されます。デフォルトの一時テーブルスペースは、SharePlexのオブジェクトがインストールされている一時テーブルスペースです。compareコマンドを使用して大きなテーブル、特にプライマリキーや一意キーを持たないテーブルを比較する場合は、SharePlex専用の一時テーブルスペースを指定します。

    SharePlexインデックステーブルスペース

    データベース・セットアップ・ユーティリティは、SharePlexテーブルのインデックスを格納するテーブルスペースを要求します。デフォルトのインデックステーブルスペースは、SharePlexオブジェクトがインストールされているものです。I/Oの競合を最小化するには、テーブルがインストールされているテーブルスペースとは別のインデックステーブルスペースを指定します。

    注意: 以前のバージョンのSharePlexのインデックスがSharePlexのオブジェクトテーブルスペースにインストールされている場合は、それらを別のテーブルスペースに移動し、セットアップユーティリティを実行するときにそのテーブルスペースを指定することができます。

    Oracle cloud-ExaCSおよびDBCSのデータベースセットアップの実行

    Oracle cloud-ExaCSとDBCSのデータベースセットアップを行うには、以下の手順を実行します。

    重要! この手順を実行する前に、Oracleインスタンスをオープンしておく必要があります。

    1. UnixとLinuxのみ複数の変数データディレクトリを使用している場合は、データベースセットアップを実行するSharePlexインスタンスの変数データディレクトリを指す環境変数をエクスポートします。

      kshシェル:

      export SP_SYS_VARDIR=/full_path_of_variable-data_directory

      cshシェル:

      setenv SP_SYS_VARDIR=/full_path_of_variable-data_directory

    2. sp_copを含む、すべての実行中のSharePlexプロセスをシャットダウンします。
    3. オペレーティングシステムのコマンドプロンプトから、SharePlexbinサブディレクトリのフルパスを使用してデータベース・セットアップ・プログラムを実行します。

    4. SharePlexの設定で、システムがソースシステムであるか、ターゲットシステムであるか、あるいはソースシステムとターゲットシステムの両方であるかを指定します。

      注意: このプロンプトは、このデータベースセットアップを最初に実行したときにのみ表示されます。

    5. 接続タイプにはOracleを選択します。
    6. 希望する接続のタイプに合わせてSharePlexを適切に設定するためのプロンプトと応答については、以下の表を参照してください。

    表3: セットアップのプロンプトと対応

    プロンプト 対応
    Will SharePlex install be using a BEQUEATH connection? (Entering 'n' implies a SQL*net connection):

    ローカルのBEQUEATH接続を使用する場合は「Y」を、TNSエイリアス接続を使用する場合は「N」を押します。

    注意: 以下の場合、TNSエイリアスを使用するために「N」を押します。
    • データベースがマルチテナントデータベースである
    • SharePlexが、Amazon RDS上のデータベースなど、リモートデータベースからのキャプチャや、リモートデータベースへのポストを行っている
    • データベースがクラスタ内にあるOracle RACなど

    Are you configuring SharePlex for an AWS RDS database?

    RDS上のOracleデータベース用にSharePlexを設定していない場合は、「N」を押します。

    AWS RDSデータベース用にSharePlexを設定している場合は「Y」を押します。

    以下のいずれかのプロンプトが表示されます。

    • BEQUEATH= Yを選択した場合:

      Enter the Oracle SID for which SharePlex should be installed:

    • BEQUEATH = Nを選択した場合:

      Enter the TNS alias for which SharePlex should be installed:

    非マルチテナントデータベース: デフォルトを受け入れるか、正しいSIDまたはTNSエイリアスを入力します。

    RACでは、TNSエイリアスはグローバルエイリアスでなければなりません。

    マルチテナントデータベース: PDBのTNSエイリアスを入力します。

    Amazon RDS: RDSデータベースのTNSエイリアスを入力します。

    以下のいずれかのプロンプトが表示されます。

    • データベースがRDS上にない場合:

      Enter a DBA user for SID:

    • データベースがRDS上にある場合:

      In order to create the SharePlex tables and user account, we must connect to the RDS database using the RDS primary user.

    非マルチテナントデータベース: DBA権限を持つデータベースユーザの名前を入力します。

    マルチテナントデータベース: アカウントとオブジェクトをインストールするために必要な権限を持つ共通のユーザの名前を入力します。

    Amazon RDSデータベース: RDSプライマリユーザの名前を入力します。

    以下のいずれかのプロンプトが表示されます。

    • データベースがRDS上にない場合:

      Enter password for the DBA account, which will not echo:

    • データベースがRDS上にある場合:

      Enter the password for the RDS primary user, which will not echo.

    非マルチテナントデータベース: DBAユーザのパスワードを入力します。

    マルチテナントデータベース: 共通ユーザのパスワードを入力します。@と残りの接続文字列は省略します。SharePlexは適切な形式で接続文字列を構築します。

    Amazon RDSデータベース: RDSプライマリユーザのパスワードを入力します。

     

    Current SharePlex user is user.

    Would you like to create a new SharePlex user?

    N」を押して既存のSharePlexアカウントを更新するか、「Y」を押して新しいSharePlex アカウントを作成します。入力を求められたら、資格情報を入力します。

    既存のSharePlexユーザの有効なパスワードを入力するには、5回試みることができます。パスワードは難読化されています。

    重要!アクティブな設定があるときにSharePlexスキーマを変更した場合は、SharePlexオブジェクトを古いスキーマから新しいスキーマにコピーして、レプリケーション環境を維持します。

    Do you want to enable replication of tables with TDE?

    TDEはRDSではサポートされていないため、「N」を押します。

    Enter the default tablespace for use by SharePlex:

    Enterキーを押してデフォルトを受け入れるか、別のテーブルスペースの名前を入力します。

    Enter the temporary tablespace for use by SharePlex:

    Enterキーを押してデフォルトを受け入れるか、別のテーブルスペースの名前を入力します。

    Enter the index tablespace for use by SharePlex:

    Enterキーを押してデフォルトを受け入れるか、別のテーブルスペースの名前を入力します。

    Will the current setup for sid: SID be used as a source (including cases as source for failover or primary-primary setups)?

     

    ソースシステムであれば「Y」を、ターゲットシステムであれば「N」を押します。

    重要: プライマリ/プライマリ構成ピアツーピアおよび高可用性構成のすべてのシステムは、レプリケーションの双方向性によりソースシステムと見なされます。

    注意:
    • 以下のプロンプトは、データベースがASM上のソースである場合にのみ表示されます。
    • これがOracleターゲットであれば、これでセットアップは完了です。

     

    ASM detected. Do you wish to connect to ASM using BEQUEATH connection?

     

    SharePlexでBEQUEATH接続を使用してASMインスタンスに接続する場合は「Y」を、TNSエイリアスを使用する場合は「N」を押します。

    重要! データベースでASMを使用し、さらにSCAN IPを使用してデータベースのTNSエイリアスを設定している場合、SharePlexをASMインスタンスに接続するために、ASM TNSエイリアスを介した接続を指定しなければなりません。

    BEQUEATH接続を選択していない場合は、次のプロンプトが表示されます。

    Do you wish to keep connecting using the same user/password?

     

    ログインユーザと同じユーザとパスワードを使用する場合は「Y」を、異なるユーザとパスワードを使用する場合は「N」を押します。

    通常、SharePlexを実行しているユーザはOSASMグループのメンバーでなければなりません。これは、SP_OCT_OLOG_USE_OCIがデフォルト以外の値である1に設定されている場合は適用されません。

    また、BEQUEATH接続を使用している場合、SharePlexを実行しているユーザはOSDBAグループのメンバーでなければなりません。

    注意:
    • BEQUEATH接続を使用してASMに接続することを選択した場合、データベースセットアップは完了です。この表の後に「Oracle Cloud-ExaCSとDBCSのデータベースセットアップ

    • N」を選択した場合はTNSエイリアスを入力する必要があり、プロンプトが続けて表示されます。

    Enter the ASM tns alias to be used by SharePlex:

    TNSエイリアスの名前を入力します。

    Enter an ASM admin (has both sysdba and sysasm privilege) username for alias:

    ASMインスタンスにsysasmおよびsysdba権限を持つユーザの名前を入力します。

    Enter user password for user:

    ユーザのパスワードを入力します。

    SharePlexは、Oracle Spatial and GraphオプションのSDO_GEOMETRYデータ型をサポートするパッケージを含む内部オブジェクトをインストールします。このオプションがデータベースにインストールされていない場合、以下のプロンプトが表示されます。

    The SharePlex object that supports replication of SDO_GEOMETRY cannot be installed because the Oracle Spatial and Graph feature is not installed. Do you want to continue with the setup without support for SDO_GEOMETRY? [n]:

    Y」を押してSDO_GEOMETRYをサポートせずにデータベースセットアップを続行するか、「N」を押してora_setupを終了します。

     

    1. Oracleのセットアップが完了した後、ora_setup.configファイルが<Installation_directory>/var/data内に生成されます。
    tnsnamesファイルについて

    SharePlexを、TNSエイリアスを使用したデータベース接続と、BEQUEATH接続OS認証を使用したローカルでのASM接続OS認証用にセットアップした場合は、各ノードでtnsnames.oraファイルを正しく設定することが重要です。SharePlexのデータベースアカウントがプライマリノードに存在するものと仮定すると、SharePlexは、常にプライマリASM_SIDに自動的に接続されます。これは、 SharePlexがインストールされたときに提供されているからです。しかし、フェールオーバー時には、SharePlexはローカルのv$asm_clientビューにクエリを実行し、フェールオーバーインスタンスの正しいASM_SIDを取得する必要があります。したがって、指定されたノードのローカルtnsnames.oraファイルでは、そのノードのIPアドレスが常に最初にリストされるようにしてください。

  • SharePlex環境変数

    SharePlexは以下の環境変数を使用します。状況によってはこれらの環境変数を設定する必要があります。通常、変数を設定する前または後に追加の手順を実行する必要があるため、SharePlexの変数を設定する前に推奨手順を参照してください。

    環境変数 説明
    EDITOR create configコマンドなどで使用する、sp_ctrlコマンドのデフォルトのASCIIテキストエディタを設定します。
    HOST sp_ctrlのローカルで実行されるすべてのセッションのホスト名を設定します。
    SP_COP_TPORT

    SharePlexのインスタンスにデフォルト以外のポート番号を設定します。デフォルトのポート番号は2100です。以下のいずれかに当てはまる場合は、別のポート番号を設定しなければならないことがあります。

    • sp_copの追加のインスタンスをセットアップしている場合
    • 2100以外のポート番号を使用しなければならない場合
    SP_SYS_HOST_NAME

    設定のアクティベーションの際にSharePlexがバインドするホスト名を設定します。この変数は以下のように使用されます。

    • Oracle RACなどのクラスタ化システムで仮想IPアドレスグローバル・クラスタ・パッケージ名とも呼ばれるを設定します。この変数はすべてのクラスタノードで設定する必要があります。
    • SP_SYS_HOST_NAMEがソースシステムのIPV6アドレスに設定されている場合、ターゲットシステムのSharePlexはバージョン9.0以降でなければなりません。

    SP_SYS_VARDIR sp_copが設定データ、キュー、ログ、その他の情報を見つけられるように、SharePlexの変数データディレクトリへのフルパスを設定します。ローカルシステム上にsp_copのインスタンスが1つしかない場合、この変数はデフォルトで設定されます*。ローカルシステム上にsp_copのインスタンスが複数ある場合、そのインスタンスに他のSharePlex変数を設定する前に常にこの変数を設定し、そのインスタンスの正しい変数データディレクトリを指すようにします。
    SP_SYS_SECURE_MODE

    SharePlexの現在のインスタンスが実行されている間、すべてのcompareとrepairの実行に関するcompareとrepairのSQLログファイルの出力を抑制します。この変数はSharePlexを開始する前に設定しなければなりません。したがって、sp_copプロセスが実行されている場合は、この変数を設定した後に再起動しなければなりません。この環境変数を指定してsp_copを実行すると、compareコマンドとrepairコマンドによってSQLファイルにデータは保存されず、Post処理でもSharePlexのエラーログにデータは保存されません。

    * UnixとLinuxでは、変数データディレクトリはproddir/data/default.yamlファイルに設定されます。

    UnixやLinuxで環境変数を設定するには:

    kshシェル:

    export variable_name=value

    cshシェル:

    setenv variable_name value

     

    kshシェル:

    export SP_SYS_VARDIR=full_path_of_variable-data_directory

    cshシェル:

    setenv SP_SYS_VARDIR full_path_of_variable-data_directory

     

    Related Documents

    The document was helpful.

    Select Rating

    I easily found the information I needed.

    Select Rating