Alter Database (その他)

様々なアクション・キーワードとともに使用するMaxL alter database文は、Essbaseデータベースでアクションを実行するために役立ちます。

キーワード

MaxL alter databaseを使用して、次のデータベース全体の設定を変更します。ほとんどの文に必要な最小アプリケーション権限はデータベース・マネージャですが、例外が記載されています。

alter database DBS-NAME reset

データベースからすべてのデータと、リンクされたレポート・オブジェクトをクリアしますが、アウトラインは保持します。

例:

alter database Sample.Basic reset;
alter database DBS-NAME reset all

すべてのデータ、リンク・レポート・オブジェクト、およびアウトラインがクリアされます。

例:

alter database Sample.Basic reset all;
alter database DBS-NAME reset data

データベースからすべてのデータと、リンクされたレポート・オブジェクトをクリアしますが、アウトラインは保持します(resetを使用する場合と同じ)。

例:

alter database Sample.Basic reset data;
alter database DBS-NAME force restructure

データベースが明示的に再構築されて、断片化が解消または減少されます。デフォルトでは、この文はシリアル実行されます。並列再構築を可能にするには、RESTRUCTURETHREADS構成設定を使用します。

例:

alter database Sample.Basic force restructure;
alter database DBS-NAME load alias_table …

ファイルから現在のデータベースに別名表をロードします。フィーダ・ファイル(FILE-NAME)は、次のルールに従う必要があります。

  • 形式が適切であること。

  • Essbaseサーバー上のキューブ・ディレクトリにある必要があります(クライアント・コンピュータ上ではない)。

    Essbaseの<Application Directory>、キューブ・ディレクトリおよび他のディレクトリの場所の詳細は、Essbaseプラットフォームの環境の場所に関する項を参照してください。

  • FILE-NAMEにフルパスが含まれていること。

別名表をロードするためのフィーダ・ファイルのサンプル・コンテンツを次に示します。

   $ALT_NAME
   "400-10"        Guava
   "400-20"        Tangerine
   "400-30"        Mango
   $END

例:

alter database Sample.Basic load alias_table "Long Names" from data_file 'newalias.alt';

別名表newalias.altをSample Basicにインポートします。ファイルnewalias.altが、Sample Basicキューブ・ディレクトリにすでにアップロードされている必要があります。

alter database DBS-NAME unload alias_table …

指定した別名表が削除されます。

例:

alter database Sample.Basic unload alias_table "Long Names";
alter database DBS-NAME add variable …

データベース・レベルの代替変数を名前を指定して作成し、オプションで、表す変数の文字列値を割り当てます。値は、set variableを使用して後から割当てまたは変更できます。代替変数は定期的に変化する情報のグローバルなプレースホルダとして機能します。代替変数は、計算およびレポート・スクリプトで参照される場合があります。

同じ名前の代替変数がサーバー、アプリケーション、およびデータベース・レベルで存在する場合、変数の優先順位は次のようになります。データベース・レベルの代替変数は、アプリケーション・レベルの変数に優先し、アプリケーション・レベルの変数はサーバー・レベルの変数に優先します。

例:

alter database Sample.Basic add variable Month Oct;
alter database DBS-NAME drop variable …

代替変数とそれに対応する値をデータベースから削除します。

例:

alter database Sample.Basic drop variable Month;
alter database DBS-NAME delete lro ...

指定したユーザー名または変更日について、アクティブなデータベースにリンクされているリンク・レポート・オブジェクトが削除されます。

例:

alter database Sample.Basic delete lro by user3 before '11/01/2024';
alter database DBS-NAME unlock all objects

ユーザーまたはプロセスで使用されているデータベース上のすべてのオブジェクトをロック解除します。サービス管理者である必要があります。サービス管理者は任意のオブジェクトをロック解除できますが、他のユーザーはロックしたオブジェクトしかロック解除できません。

例:

alter database Sample.Basic unlock all objects;
alter database DBS-NAME begin archive …

プログラムをアーカイブすることでバックアップのためにデータベースを準備し、バックアップ中にファイルへの書き込みを抑制します。この処理を実行するには、システム管理者である必要があります。

この文では、データベースを起動する必要があります。

アーカイブを開始すると次のような結果になります。

  • 変更されたすべてのデータがディスクにコミットされます。

  • データベースが読取り専用モードに切り替えられます。アプリケーションの再起動後も読取り専用状態が持続し、end archiveを使用して読取り/書込みに戻るように変更されるまで続きます。

  • データベース・ファイルが共有の読取り専用モードで再度開きます。

  • バックアップが必要なファイルのリストが格納されたファイルが作成されます。別のパスが指定されないかぎり、ファイルはデータベース・ディレクトリに格納されます。

begin archiveとend archiveでは、バックアップは実行されません。バックアップ・プロセス中にデータベースを保護するだけです。

ノート:

begin archive to fileend archiveの文法を使用することが、MaxLを使用してデータベースのバックアップとリカバリを開始するためにサポートされる唯一の方法です。

例:

alter database Sample.Basic begin archive to file 'samplebasic.arc';

Sample.Basicファイルをsamplebasic.arcにバックアップします。

alter database DBS-NAME end archive

データベース・ファイルをバックアップした後に、データベースが読取り書込みモードに戻ります。

この文では、データベースを起動する必要があります。

アーカイブを終了すると次のような結果になります。

  • データベースが読取り書込みモードに戻ります。

  • 排他的な読取り書込みモードでデータベース・ファイルが再度開きます。

ノート:

begin archive to fileend archiveの文法を使用することが、MaxLを使用してデータベースのバックアップとリカバリを開始するためにサポートされる唯一の方法です。

例:

alter database Sample.Basic end archive;

データベース・ファイルをバックアップした後に、Sample.Basicデータベースが読取り書込みモードに戻ります。

alter database DBS-NAME replay transactions …

前回の再実行リクエストが最初に実行された後、または最後にバックアップが復元された後(後で発生した方)にロギングされたデータベース・トランザクションが再実行されます。

復元操作の後で実行およびロギングされたトランザクションは、シーケンスIDを使用して再実行しないかぎり、再実行されません。データベースを復元した後、バックアップ後から復元前までにロギングされた、データベースを完全に回復するのに必要なトランザクションを再実行することをお薦めします。これで、新しいトランザクションを実行できるようになります。

ノート:

トランザクション・ロギングおよび再実行は、Essbase 21cでの下位互換性のサポートにのみ使用できます。Essbase 11gオンプレミスの後に追加された機能は、トランザクション・ロギングおよび再実行ではサポートされません。次のものが含まれます(これに限定されません):

  • バッチ・アウトライン編集
  • アプリケーション・ワークブックおよびキューブ・デザイナ・アクティビティ
  • シナリオ管理
  • データソースを使用した外部データ・ロード
  • REST APIデータ・ロードおよびその他の更新
  • フェデレーテッド・パーティション
  • MDX挿入
  • トランザクションのドリルスルー
alter database DBS-NAME replay transactions after LOG-TIME

指定した時間が経過した後でログに記録されたトランザクションが再実行されます。TIMEの値は、'11_20_2007:12:20:00'のように引用符で囲みます。

例:

alter database Sample.Basic replay transactions after '11_20_2007:12:20:00';

指定した時間の経過後にログに記録されたすべてのトランザクションが再実行されます。

alter database DBS-NAME replay transactions using sequence_id_range ID-RANGE

シーケンスIDの範囲のカンマ区切りのリストで指定されたトランザクションが再実行されます。範囲は次のもので構成されます。

  • 単一トランザクションの場合: n to n。たとえば、1 to 1

  • トランザクションが複数の場合: x to y。たとえば、20 to 100

ロギングされる各トランザクションには、トランザクションが実行された順序を示すシーケンスIDが割り当てられます。再実行後に復元されたデータの整合性を確保するために、Essbaseは、トランザクションが実行された順序でトランザクションを再実行します。シーケンスIDの順序は、複数の再実行コマンドをまたいで追跡されます。

ノート:

そのトランザクション結果がデータベースの回復に必要ないと確信できるトランザクションについては再実行を省略できます。

例:

alter database Sample.Basic replay transactions using sequence_id_range 1 to 10,20 to 100;

Sample.Basicデータベース内のシーケンスID 1から10、および20から100のトランザクションが再実行されます。

alter database DBS-NAME rename …

データベースの名前を変更します。データベースの名前を変更すると、キューブ・ディレクトリの名前も変更されます。

例:

alter database Sample.Basic rename to Basic2;
alter database DBS-NAME comment …

データベースの説明を作成します。最大文字数は80文字です。この説明は、データベース管理者が使用できます。Smart Viewやその他のグリッド・クライアント・ユーザー向けにデータベースに注釈を付けるには、かわりにset noteを使用します。

例:

alter database Sample.Basic comment 'my comment';