クラスタウェア管理
TimesTenと併用した場合の、クラスタウェアを管理するためのいくつかの手順を示します。
この項の内容は次のとおりです。
Oracle Clusterware使用時のユーザー名やパスワードの変更
ttCWAdmin -create
コマンドでアクティブ・スタンバイ・ペアのレプリケーション・スキームを作成する場合、TimesTen環境を管理するために必要なユーザー名とパスワードを求めるプロンプトがOracle Clusterwareで表示されます。
Oracle Clusterwareはこれらのユーザー名とパスワードを保存します。ユーザー名やパスワードを変更した後、ttCWAdmin -reauthenticate
コマンドを実行して、これらの新しいユーザー名とパスワードをOracle Clusterwareが格納できるようにする必要があります。
クラスタでのホストの管理
次の各項では、クラスタ使用時のホストの追加方法または削除方法を説明します。
クラスタへのホストの追加
ホストを追加するには、クラスタが高度な可用性用に構成されている必要があります。
この項の例では、advancedSubscriberDSN
を使用しています。
クラスタに2つのスペア・マスター・ホストを追加するには、次のようなコマンドを入力します。
ttCWAdmin -addMasterHosts -hosts "host8,host9" -dsn advancedSubscriberDSN
クラスタに1つのスペア・サブスクライバ・ホストを追加するには、次のようなコマンドを入力します。
ttCWAdmin -addSubscriberHosts -hosts "subhost1" -dsn advancedSubscriberDSN
クラスタからのホストの削除
ホストをクラスタから削除するには、クラスタが高度な可用性用に構成されている必要があります。
マスター・ホストの1つを削除するには、MasterHosts
に3つ以上のホストがリストされている必要があります。サブスクライバ・ホストの1つを削除するには、サブスクライバ・データベースの数よりも少なくとも1つ多いホストがSubscriberHosts
にリストされている必要があります。
この項の例では、advancedSubscriberDSN
を使用しています。
クラスタから2つのスペア・マスター・ホストを削除するには、次のようなコマンドを入力します。
ttCWAdmin -delMasterHosts "host8,host9" -dsn advancedSubscriberDSN
クラスタから1つのスペア・サブスクライバ・ホストを削除するには、次のようなコマンドを入力します。
ttCWAdmin -delSubscriberHosts "subhost1" -dsn advancedSubscriberDSN
アクティブ・スタンバイ・ペアでの読取り専用サブスクライバの管理
次の各項では、Oracle Clusterwareで管理されるアクティブ・スタンバイ・ペア内の読取り専用サブスクライバの管理方法を説明します。
Oracle Clusterwareによって管理される読取り専用サブスクライバの追加
Oracle Clusterwareによって管理される読取り専用サブスクライバをアクティブ・スタンバイ・ペアのレプリケーション・スキームに追加するには、次のステップを実行します。
Oracle Clusterwareによって管理される読取り専用サブスクライバの削除
Oracle Clusterwareによって管理される読取り専用サブスクライバをアクティブ・スタンバイ・ペアから削除するには、次のステップを実行します。
Oracle Clusterwareで管理されない読取り専用サブスクライバの追加または削除
Oracle Clusterwareによって管理されている既存のアクティブ・スタンバイ・ペアのレプリケーション・スキームに、Oracle Clusterwareによって管理されていない読取り専用サブスクライバを追加または削除できます。
ttCWAdmin -beginAlterSchema
コマンドを使用すると、レプリケーション・スキームを削除および再作成せずに、サブスクライバを追加できます。サブスクライバはOracle Clusterware管理用に設定された構成の一部ではないため、Oracle Clusterwareでは管理されません。
次の手順を実行します:
サブスクライバを追加した場合は、「Oracle Clusterwareで管理されない読取り専用サブスクライバの構成」のステップ1の説明に従って、cluster.oracle.ini
ファイルに読取り専用サブスクライバのOracle Clusterware属性RemoteSubscriberHostsを追加することで、クラスタが削除されて再作成された場合に読取り専用サブスクライバが確実に含まれるようにします。また、サブスクライバを削除した場合は、cluster.oracle.ini
ファイルから、削除したサブスクライバのOracle Clusterware属性RemoteSubscriberHosts
を削除します(構成されている場合)。
Oracle Clusterwareで管理されない読取り専用サブスクライバの再作成
次のタスクを実行して、Oracle Clusterwareによって管理されない読取り専用サブスクライバを破棄および再作成します。
- サブスクライバ・ホストでレプリケーション・エージェントを停止します。
ttDestroy
ユーティリティを使用して、サブスクライバ・データベースを破棄します。- サブスクライバ・ホストで、
ttRepAdmin -duplicate
を使用して、スタンバイ・データベースを読取り専用サブスクライバに複製します。「データベースの複製」を参照してください。
マスター・データベースの役割の入替え
フェイルオーバー後、アクティブ・データベースおよびスタンバイ・データベースはフェイルオーバー前とは異なるホストに配置されます。元の構成をリストアするには、ttCWAdmin
ユーティリティの-switch
オプションを使用します。
また、必要に応じて、-timeout
オプションと-switch
オプションを使用して、アクティブおよびスタンバイ・データベースの切替えが完了するまで待機するタイムアウトの秒数を設定できます。
たとえば:
ttCWAdmin -switch -dsn basicDSN
-switch
オプションを使用する前に、オープン・トランザクションが存在しないことを確認してください。オープン・トランザクションが存在する場合、コマンドは失敗します。
ノート:
『Oracle TimesTen In-Memory Databaseリファレンス』のttCWAdminを参照してください。
図8-6に、アクティブ・スタンバイ・ペアのホストを示します。アクティブ・データベースはホストAに存在し、スタンバイ・データベースはホストBに存在します。
ttCWAdmin -switch
コマンドによって次のタスクが実行されます。
-
ホストA (アクティブ・マスター)でTimesTenクラスタ・エージェント(
ttCRSAgent
)を非アクティブにする。 -
ホストAでTimesTenデータベース・モニター(
ttCRSmaster
)を無効にする。 -
ホストAで組込みプロシージャ
ttRepSubscriberWait
、ttRepStop
およびttRepDeactivate
をコールする。 -
ホストAでアクティブ・サービス(
ttCRSActiveService
)を停止し、Oracle ClusterwareのCRSD
プロセスに失敗イベントをレポートする。 -
ホストAで監視を有効にし、アクティブ・サービスをホストBに移動する。
-
ホストAでレプリケーション・エージェントを開始し、ホストBでスタンバイ・サービス(
ttCRSsubservice
)を停止して、ホストBでOracle ClusterwareのCRSD
プロセスに失敗イベントをレポートする。 -
ホストAでスタンバイ・サービス(
ttCRSsubservice
)を開始する。
接続属性値の変更
サブスクライバを持つアクティブ・スタンバイ・ペアの間で接続属性を変更した場合、この構成に含まれるすべてのホストで接続属性を変更する必要があります。
ノート:
DATASTORE
接続属性は、データ・ストアの作成時にのみ設定が許可されているため、すべて変更できません。たとえば、次のプロシージャはPermSize
値を変更するために使用できます。
ttCWAdmin -beginAlterSchema
および-endAlterSchema
コマンドを使用すると、アクティブおよびスタンバイ・データベースとすべてのサブスクライバの接続属性値を簡単に変更できます。
-
変更の準備のため、
ttCWAdmin -beginAlterSchema
コマンドを使用して、Oracle Clusterware管理を一時停止し、アクティブおよびスタンバイ・データベースとすべてのサブスクライバ・データベースのレプリケーション・エージェントを停止します。 -
すべての変更が完了したら、
ttCWAdmin -endAlterSchema
コマンドを使用して、Oracle Clusterware管理を再開し、アクティブおよびスタンバイ・データベースとすべてのサブスクライバ・データベースのすべてのレプリケーション・エージェントを再起動します。
Oracle Clusterwareを使用している場合にアクティブ・スタンバイ・ペアの接続属性を変更するには、次のタスクを実行します。
-
ttCWAdmin -beginAlterSchema
コマンドを使用して、Oracle Clusterwareを一時停止し、アクティブおよびスタンバイ・データベースのすべてのレプリケーション・エージェントを停止します。アクティブ・データベースはリクエストと更新を引き続き受け付けますが、レプリケーション・エージェントが再起動されるまでは、スタンバイ・データベースとすべてのサブスクライバにはいかなる変更も伝播されません。
また、
ttCWAdmin -beginAlterSchema
コマンドは、スタンバイ・データベースとすべてのサブスクライバ・データベースのRAMポリシーを一時的にInUse with RamGraceに変更します。このポリシーにより、TimesTenがこれらのデータベースをアンロードできるようにするための60秒の猶予期間が設定されます。スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされると、これらのデータベースの接続属性が変更可能になります。ttCWAdmin -beginAlterSchema -dsn advancedDSN
-
すべてのアプリケーション接続を切断し、(RAMポリシーに基づいて)スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされるのを待機します。
スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされたら、それぞれの
sys.odbc.ini
ファイル内のスタンバイ・データベースおよびすべてのサブスクライバ・データベースのホストで、PermSize
などの任意の接続属性を変更します。 -
ttCWAdmin -endAlterSchema
コマンドを使用して、Oracle Clusterwareを再開し、アクティブおよびスタンバイ・データベースのすべてのレプリケーション・エージェントを再起動します。各TimesTenデータベースの構成済のRAMポリシーは、alwaysに戻されます。アクティブ・データベースは、スタンバイ・データベースとサブスクライバが停止していた間に発生したすべてのトランザクションを伝播します。ttCWAdmin -endAlterSchema -dsn advancedDSN
ノート:
次のステップを実行する前に、アクティブ・データベースからスタンバイ・データベースとすべてのサブスクライバにすべての変更が伝播されるまで、しばらく待機します。
接続属性をまだ変更していないホストは、アクティブ・データベースのみです。このホストで接続属性を変更できるようにするため、アクティブ・データベースとスタンバイ・データベースを切り替えます。
-
すべてのアプリケーション・ワークロードを一時停止して、アクティブ・データベースのすべてのアプリケーションを切断します。
-
ttCWAdmin -switch
コマンドを使用して、アクティブ・データベースとスタンバイ・データベースを切り替えます。ttCWAdmin -switch -dsn advancedDSN
ノート:
「マスター・データベースの役割の入替え」を参照してください。
-
ttCWAdmin -beginAlterSchema
コマンドを使用して、Oracle Clusterwareを一時停止し、すべてのデータベースのすべてのレプリケーション・エージェントを停止します。新しいアクティブ・データベースは引き続きリクエストと更新を受け付けますが、新しいスタンバイ・データベースとすべてのサブスクライバにはいかなる変更も伝播されません。
新しいスタンバイ・データベース(およびすべてのサブスクライバ・データベース)のRAMポリシーがinUse with RamGraceに変更されます。このポリシーにより、TimesTenがこれらのデータベースをアンロードできるようにするための60秒の猶予期間が設定されます。
ttCWAdmin -beginAlterSchema -dsn advancedDSN
-
新しいスタンバイ・データベースがメモリーからアンロードされるを待機します。アンロードが完了したら、
sys.odbc.ini
ファイルに含まれる新しいスタンバイ・データベースで、同じ接続属性(PermSize
など)を変更します。これで、すべてのホストで接続属性が変更されました。 -
ttCWAdmin -endAlterSchema
コマンドを実行して、Oracle Clusterware管理を再開し、アクティブおよびスタンバイ・データベースのレプリケーション・エージェントを再起動します。構成済のRAMポリシーはalwaysに戻されます。ttCWAdmin -endAlterSchema -dsn advancedDSN
-
すべてのアプリケーション・ワークロードを一時停止して、アクティブ・データベースのすべてのアプリケーションを切断します。
-
必要であれば、
ttCWAdmin -switch
コマンドを使用してアクティブ・データベースとスタンバイ・データベースを切り替え、アクティブ・スタンバイ・ペアを元の構成に戻します。ttCWAdmin -switch -dsn advancedDSN
TimesTenデータベースのRAMポリシーの管理
Oracle ClusterwareでTimesTenデータベースを管理する場合、TimesTenデータベースのRAMポリシーはデフォルトでalwaysに設定されています。ただし、Oracle Clusterware管理を停止すると、TimesTenデータベースのRAMポリシーはinUseに設定されます。
TimesTenの管理にOracle Clusterwareを今後使用しない場合は、ご使用の環境に合ったTimesTen RAMポリシーを設定する必要があります。一般的に推奨される設定はmanualです。
『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のRAMポリシーの指定を参照してください。
スキーマの変更
Oracle Clusterwareを使用してアクティブ・スタンバイ・ペアを管理する場合、Oracle Clusterwareですべてのレプリケーション・エージェントを起動および停止する必要があることを除いて、通常のレプリケーション環境と同様に必要に応じてDDL文を実行してスキーマを変更できます。
したがって、スキーマを変更する際には次のことに気をつけてください。
-
自動的にレプリケートされるオブジェクトに対するDDL文については、レプリケーション・エージェントを停止する必要はありません。この場合、DDL文が自動的に伝播され、スタンバイ・データベースとすべてのサブスクライバに適用されるため、それ以上のアクションは必要ありません。
DDLReplicationLevel
接続属性によって、レプリケートされるDDL文を制御します。 -
レプリケーション・スキームに含まれているオブジェクトだが、これらのオブジェクトに対して処理されたDDL文がレプリケートされない場合は(これらのオブジェクトは「アクティブ・スタンバイ・ペアに対するその他の変更」内でリスト)、アクティブ・データベースでOracle Clusterwareの
ttCWAdmin -beginAlterSchema
コマンドを実行することで、Oracle Clusterware管理をすべて一時停止しレプリケーション・スキーム内の各ノードでレプリケーション・エージェントを停止します。その後、レプリケーション・スキームのアクティブ・データベースでDDL文を実行します。最後に、アクティブ・データベースでOracle ClusterwareのttCWAdmin -endAlterSchema
コマンドを実行して、すべてのレプリケーション・エージェントを再起動します。これらのオブジェクトはレプリケーション・スキームに含まれますが、DDL文がレプリケートされないため、
ttCWAdmin -endAlterSchema
コマンドの実行後に複製が行われ、これらのスキーマ変更がスタンバイ・データベースとすべてのサブスクライバに伝播されます。これは、複製がスキーマの変更を伝播するために使用される唯一のシナリオです。手順については、「Oracle Clusterwareのスキーマ変更の簡略化」を参照してください。
-
自動的にレプリケートされない、レプリケーション・スキームに含まれないオブジェクトに対するDDL文については、アクティブ・データベースでOracle Clusterwareの
ttCWAdmin -beginAlterSchema
コマンドを実行して、Oracle Clusterware管理をすべて一時停止し、すべてのノード上のレプリケーション・エージェントを停止します。その後、「アクティブ・スタンバイ・ペアでのDDL変更」で説明されているように、手動でこれらのDDL文を実行することですべてのノードを同期できます。最後に、アクティブ・データベースでOracle ClusterwareのttCWAdmin -endAlterSchema
コマンドを実行して、すべてのレプリケーション・エージェントを再起動します。手順については、「Oracle Clusterwareのスキーマ変更の簡略化」を参照してください。
ノート:
「アクティブ・スタンバイ・ペアでのDDL変更」と「アクティブ・スタンバイ・ペアに対するその他の変更」の項で、アクティブ・スタンバイ・ペアの場合にどのDDL文が自動的にレプリケートされるか、およびレプリケートされないかを説明しています。これらの項では、どのオブジェクトがレプリケーション・スキームの一部かも説明しています。
Oracle Clusterwareのスキーマ変更の簡略化
ttCWAdmin -beginAlterSchema
および-endAlterSchema
コマンドを使用すると、アクティブおよびスタンバイ・データベースでのスキーマ変更が簡単にできます。
-
スキーマ変更の準備のため、
ttCWAdmin -beginAlterSchema
コマンドを使用して、Oracle Clusterware管理を一時停止し、アクティブ・データベースとスタンバイ・データベースの両方でレプリケーション・エージェントを停止します。 -
すべてのスキーマ変更が完了した後、
ttCWAdmin -endAlterSchema
コマンドを実行します。レプリケーション・スキームに含まれるがオブジェクトに対して実行されるDDL文が自動的にレプリケートされないオブジェクトの場合、ttCWAdmin -endAlterSchema
コマンドの実行後に複製が行われ、これらのスキーマ変更のみがスタンバイ・データベースとすべてのサブスクライバに伝播されます。このコマンドは、変更されたレプリケーション・スキームを登録し、アクティブおよびスタンバイ・データベースのレプリケーション・エージェントを再起動し、Oracle Clusterwareの制御を回復します。
Oracle Clusterwareの使用時にアクティブ・スタンバイ・ペアのスキーマを変更するには、次のタスクを実行します。
-
Oracle Clusterwareを一時停止し、アクティブ・データベースとスタンバイ・データベースの両方でレプリケーション・エージェントを停止します。
ttCWAdmin -beginAlterSchema -dsn advancedDSN
-
必要なスキーマ変更を行います。
また、オブジェクトに対するDDLがレプリケートされないオブジェクトを作成、変更または削除する場合は、レプリケーション・エージェントが非アクティブになっている間に、スタンバイ・データベースとサブスクライバで同じオブジェクトを手動で作成、変更または削除して、同じオブジェクトがレプリケーション・スキーム内のすべてのデータベースに存在するようにする必要があります。たとえば、アクティブ・データベースでマテリアライズド・ビューを作成する場合は、スタンバイ・データベースとサブスクライバ・データベースでも同時にそのマテリアライズド・ビューを作成します。
-
レプリケーション・スキームの一部であるが、自動的にはレプリケートされないオブジェクト(順序など)をアクティブ・スタンバイ・ペアのレプリケーション・スキームに含める場合は、アクティブ・スタンバイ・ペアを変更します。
ALTER ACTIVE STANDBY PAIR INCLUDE samplesequence;
-
オブジェクトがキャッシュ・グループである場合の、キャッシュ・グループを作成、変更または削除する手順については、「キャッシュ・グループに対するスキーマ変更」を参照してください。
-
ttCWAdmin -endAlterSchema
コマンドを実行して、Oracle Clusterwareを再開し、アクティブおよびスタンバイ・データベース上のレプリケーション・エージェントを再起動します。レプリケーション・スキームに含まれるがオブジェクトに対して実行されるDDL文が自動的にレプリケートされないオブジェクトを変更した場合は、ttCWAdmin -endAlterSchema
コマンドの実行後に複製が行われ、これらのスキーマ変更のみがスタンバイ・データベースとすべてのサブスクライバに伝播されます。ttCWAdmin -endAlterSchema -dsn advancedDSN
キャッシュ・グループに対するスキーマ変更
ttCWAdmin -beginAlterSchema
および-endAlterSchema
コマンドを使用すると、Oracle Clusterware内のキャッシュ・グループに対するスキーマ変更が簡単にできます。
キャッシュ・グループの追加
アクティブ・スタンバイ・ペアのアクティブ・データベースにキャッシュ・グループを追加できます。
アクティブ・スタンバイ・ペアのアクティブ・データベースについて、次のステップを実行します。
キャッシュ・グループを作成すると、いつでもそのキャッシュ・グループをロードすることができます。
既存のキャッシュ・グループの変更
既存のキャッシュ・グループの変更には、キャッシュ・グループの削除と追加が伴います。
既存のキャッシュ・グループを変更するには、まず「キャッシュ・グループの削除」の説明に従って既存のキャッシュ・グループを削除します。その後、「キャッシュ・グループの追加」の説明に従って、必要な変更を加えたキャッシュ・グループを追加します。
異なるホストへのデータベースの移動
クラスタで高度な可用性が構成されている場合、ttCWAdmin -relocate
コマンドを使用して、ローカル・ホストから、cluster.oracle.ini
ファイルのMasterHosts
属性で指定されている次に利用可能なスペア・ホストにデータベースを移動できます。
ローカル・ホストのデータベースがアクティブな役割を持っている場合、-relocate
オプションでは、まず役割の入替えが行われます。したがって、新しく移行されたアクティブ・データベースがスタンバイ・データベースになり、元のスタンバイ・データベースが新しいアクティブ・データベースになります。
ttCWAdmin -relocate
コマンドは、ホストをオフラインにすることを決定した場合にデータベースを再配置するのに役立ちます。このコマンドを使用する前に、オープン・トランザクションが存在しないことを確認してください。
ttCWAdmin -relocate
コマンドで役割の切替えが必要な場合は、-timeout
オプションと-relocate
オプションを使用し、役割の切替えが完了するまで待機するタイムアウトの秒数を設定できます。
たとえば:
ttCWAdmin -relocate -dsn advancedDSN
ノート:
『Oracle TimesTen In-Memory Databaseリファレンス』のttCWAdminを参照してください。
Oracle Clusterwareソフトウェアのローリング・アップグレードの実行
Oracle Clusterwareソフトウェアのローリング・アップグレードを実行するための方法を説明します。
Oracle Databaseドキュメントの『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。
Oracle Clusterware使用時のTimesTenのアップグレード
Oracle Clusterware使用時にすべてのホストでTimesTenをアップグレードする方法について説明します。
-
『Oracle TimesTen In-Memory Databaseインストレーション、移行およびアップグレード・ガイド』のOracle Clusterware使用時のオフラインTimesTenアップグレードの実行。
-
『Oracle TimesTen In-Memory Databaseインストレーション、移行およびアップグレード・ガイド』のOracle Clusterware使用時のオンラインTimesTenアップグレードの実行。
ホスト・メンテナンスまたはネットワーク・メンテナンスの実行
ホストまたはネットワークのメンテナンスを実行する必要がある場合は、Oracle Clusterwareリソースを停止し、クラスタ内のTimesTenデータベースを1つ以上停止する必要があります。
データベースのデータの一貫性を維持するため、トランザクションが失われないように、アクティブ・スタンバイ・ペアに含まれるTimesTenデータベースを適切に停止する必要があります。
メンテナンスの実行中に行う決定の1つに、Oracle Clusterwareを有効なままにするか無効にするかがあります。Oracle Clusterwareを有効なままにすると、システムの再起動後に、すべてのOracle ClusterwareおよびTimesTenプロセスが自動的に再起動します。Oracle Clusterwareを無効にすると、これらのプロセスはすべて自動的には再起動しません。
クラスタ内のすべてのホストで同時にメンテナンスを実行する
クラスタ内のすべてのホストでのメンテナンスの実行中に停止時間を最小限に抑えるためのタスクを実行できます。
ノート:
アクティブ、スタンバイおよび1つ以上のサブスクライバ・データベースがある場合は、指定されたデータベースを含む各ホストで、これらのタスクの一部を実行する必要があります。
-
アクティブ、スタンバイおよびサブスクライバ・データベースを含む各ホストで、
root
またはOS管理者として、Oracle Clusterwareのcrsctl stop crs
コマンドを実行して、Oracle Clusterwareとレプリケーション・エージェントを停止します。アクティブ・データベースが停止しているため、レプリケーション・エージェントが再起動されるまで、すべてのリクエストが拒否されます。
crsctl stop crs
crsctl stop crs
コマンドは、アクティブ、スタンバイおよびすべてのサブスクライバ・データベースのRAMポリシーを一時的にinUse with RamGraceに変更します。このポリシーにより、TimesTenがこれらのデータベースをアンロードできるようにするための60秒の猶予期間が設定されます。 -
必要に応じて、クラスタ内のすべてのホストで
root
またはOS管理者としてOracle Clusterwareのcrsctl disable crs
コマンドを実行することにより、サーバー起動時にOracle ClusterwareおよびTimesTenが自動起動されるのを防止できます。crsctl disable crs
-
すべてのアプリケーション接続を切断し、アクティブ、スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされるのを待機します。
-
アクティブ・スタンバイ・ペアの各TimesTenデータベースを正常に停止するには、アクティブ、スタンバイおよびサブスクライバ・データベースを含む各ホストで次のコマンドを実行します。
ttDaemonAdmin -stop
ノート:
TimesTenメイン・デーモン・プロセスは同じTimesTenインストールに属するすべてのデータベースを管理しているので、前述のコマンドを実行する前にすべてのデータベースを切断してください。
『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のTimesTenアプリケーションの停止を参照してください。
-
アクティブ、スタンバイおよびサブスクライバ・データベースを含むホストでメンテナンスを実行します。
-
メンテナンスが完了したら、次のいずれかを実行します。
-
Oracle ClusterwareおよびTimesTenの自動起動を無効にしなかった場合は、すべてのホストを再起動してから、Oracle ClusterwareおよびTimesTenプロセスが実行されるまで待機します(これには数分かかる場合があります)。
-
再起動後のOracle ClusterwareおよびTimesTenの自動起動を無効にした場合、または、自動起動が有効になっているがメンテナンス後にホストを再起動していない場合は、クラスタ内の各ホストで次のタスクを実行します。
-
次のコマンドを実行してTimesTenデータベースを起動します。
ttDaemonAdmin -start
-
root
またはOS管理者としてcrsctl enable crs
を実行して、サーバー起動時のOracle Clusterwareの自動起動を有効にします。crsctl enable crs
-
root
またはOS管理者としてcrsctl start crs
を実行して、ローカル・サーバーのOracle Clusterwareを起動します。次のステップに進む前に、すべてのOracle Clusterwareリソースが稼働するまで待機します。crsctl start crs
-
すべてが稼働したら、アプリケーションを再接続できます。アクティブは、スタンバイおよびサブスクライバ・データベースへのすべての更新のレプリケートを開始します。構成済のRAMポリシーはalwaysに戻されます。
-
リクエストを受け付けながらメンテナンスを実行する
クラスタ内のすべてのホストでのメンテナンスの実行中に停止時間を最小限に抑える方法について説明します。
ノート:
アクティブ、スタンバイおよび1つ以上のサブスクライバ・データベースがある場合は、指定されたデータベースを含む各ホストで、これらのタスクの一部を実行する必要があります。
-
スタンバイおよびサブスクライバ・データベースを含む各ホストで、
root
またはOS管理者としてOracle Clusterwareのcrsctl stop crs
コマンドを実行して、Oracle Clusterwareとレプリケーション・エージェントを停止します。アクティブ・データベースはリクエストと更新を引き続き受け付けますが、レプリケーション・エージェントが再起動されるまでは、スタンバイ・データベースとすべてのサブスクライバにはいかなる変更も伝播されません。
crsctl stop crs
また、
crsctl stop crs
コマンドは、スタンバイおよびすべてのサブスクライバ・データベースのRAMポリシーを一時的にInUse with RamGraceに変更します。このポリシーにより、TimesTenがこれらのデータベースをアンロードできるようにするための60秒の猶予期間が設定されます。 -
必要に応じて、スタンバイおよびサブスクライバ・データベースを含む各ホストで
root
またはOS管理者としてOracle Clusterwareのcrsctl disable crs
コマンドを実行することにより、サーバー起動時にOracle ClusterwareおよびTimesTenが自動起動されるのを防止できます。crsctl disable crs
-
すべてのアプリケーション接続を切断し、スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされるのを待機します。
-
TimesTenデータベースを正常に停止するには、スタンバイおよびサブスクライバ・データベースを含む各ホストで次のコマンドを実行します。
ttDaemonAdmin -stop
ノート:
TimesTenメイン・デーモン・プロセスは同じTimesTenインストールに属するすべてのデータベースを管理しているので、前述のコマンドを実行する前にすべてのデータベースを切断してください。
『Oracle TimesTen In-Memory Databaseオペレーション・ガイド』のTimesTenアプリケーションの停止を参照してください。
-
スタンバイおよびサブスクライバ・データベースを含むホストでメンテナンスを実行します。
-
メンテナンスが完了したら、次のいずれかを実行します。
-
Oracle ClusterwareおよびTimesTenの自動起動を無効にしなかった場合は、すべてのホストを再起動してから、Oracle ClusterwareおよびTimesTenプロセスが実行されるまで待機します(これには数分かかる場合があります)。
-
再起動後のOracle ClusterwareおよびTimesTenの自動起動を無効にした場合、または、自動起動が有効になっているがメンテナンス後にホストを再起動していない場合は、クラスタ内の各ホストで次のタスクを実行します。
-
次のコマンドを実行してTimesTenデータベースを起動します。
ttDaemonAdmin -start
-
root
またはOS管理者としてcrsctl enable crs
を実行して、サーバー起動時のOracle Clusterwareの自動起動を有効にします。crsctl enable crs
-
root
またはOS管理者としてcrsctl start crs
を実行して、ローカル・サーバーのOracle Clusterwareを起動します。次のステップに進む前に、すべてのOracle Clusterwareリソースが稼働するまで待機します。crsctl start crs
-
すべてが稼働したら、アクティブはすべての更新をスタンバイおよびサブスクライバ・データベースにレプリケートします。
-
-
アクティブ・データベースのホストで同じメンテナンスを実行できるように、
ttCWAdmin -switch
コマンドを使用してアクティブ・データベースとスタンバイ・データベースを切り替えます。ttCWAdmin -switch -dsn advancedDSN
ノート:
ttCWAdmin -switch
コマンドの詳細は、「マスター・データベースの役割の入替え」を参照してください。 -
新しいスタンバイ・データベースのホストで
root
またはOS管理者としてOracle Clusterwareのcrsctl stop crs
コマンドを実行して、Oracle Clusterwareとレプリケーション・エージェントを停止します。新しいアクティブ・データベースは引き続きリクエストと更新を受け付けますが、レプリケーション・エージェントが再起動されるまで、新しいスタンバイ・データベースとすべてのサブスクライバにはいかなる変更も伝播されません。
crsctl stop crs
-
すべてのアプリケーション接続を切断し、スタンバイおよびサブスクライバ・データベースがメモリーからアンロードされるのを待機します。
-
TimesTenデータベースを正常に停止するには、新しいスタンバイ・データベースを含むホストで次のコマンドを実行します。
ttDaemonAdmin -stop
-
新しいスタンバイ・データベースを含むホストでメンテナンスを実行します。これで、クラスタ内のすべてのホストでメンテナンスが実行されました。
-
メンテナンスが完了したら、次のいずれかを実行します。
-
Oracle ClusterwareおよびTimesTenの自動起動を無効にしなかった場合は、すべてのホストを再起動してから、Oracle ClusterwareおよびTimesTenプロセスが実行されるまで待機します(これには数分かかる場合があります)。
-
再起動後のOracle ClusterwareおよびTimesTenの自動起動を無効にした場合、または、自動起動が有効になっているがメンテナンス後にホストを再起動していない場合は、クラスタ内の各ホストで次のタスクを実行します。
-
次のコマンドを実行してTimesTenデータベースを起動します。
ttDaemonAdmin -start
-
root
またはOS管理者としてcrsctl enable crs
を実行して、サーバー起動時のOracle Clusterwareの自動起動を有効にします。crsctl enable crs
-
root
またはOS管理者としてcrsctl start crs
を実行して、ローカル・サーバーのOracle Clusterwareを起動します。次のステップに進む前に、すべてのOracle Clusterwareリソースが稼働するまで待機します。crsctl start crs
-
すべてが稼働したら、アクティブはすべての更新をスタンバイおよびサブスクライバ・データベースにレプリケートします。RAMポリシーはalwaysに戻されます。
-
-
ttCWAdmin -switch
コマンドを使用して、アクティブ・スタンバイ・ペアのアクティブとスタンバイの役割を元の構成に戻します。ttCWAdmin -switch -dsn advancedDSN
ノート:
Oracle Databaseドキュメントの『Oracle Clusterware管理およびデプロイメント・ガイド』を参照してください。