RECOMP_PARALLEL プロシージャは、無効になったデータプログラム単位(パッケージ、プロシージャ、関数、トリガーなど)をマルチスレッドで並列的に再コンパイルするために使用されます。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
UTL_RECOMP.RECOMP_PARALLEL(
threads IN PLS_INTEGER DEFAULT NULL,
schema IN VARCHAR2 DEFAULT NULL,
flags IN PLS_INTEGER DEFAULT 0);
パラメータ説明
パラメータ |
説明 |
|---|---|
| threads | コンパイルの並列度を表します。 |
| schema | 対応するユーザーが所有するオブジェクトをコンパイルするかどうかを表します。NULLの場合はデータベース全体のオブジェクトをコンパイルし、NULL以外の場合は対応するユーザーのオブジェクトをコンパイルします。 |
| flags | 同名のテーブルが存在する場合に有効になります。値512はSYSテナント内に同名のテーブルが既に存在する場合、そのテーブルを直接使用することを意味し、1024は同名のテーブルが存在する場合、DROPして自動的に再作成することを意味します。デフォルト値は0(必須ではない)で、特別な意味はありません。 |
例
4つの並列スレッドを使用してすべてのオブジェクトを再コンパイルします。
obclient> EXECUTE UTL_RECOMP.RECOMP_PARALLEL(4);
Query OK, 1 row affected (23.463 sec)