3.13.3 ワークスペースの削除
ワークスペースを削除しても、関連付けられているデータベース・オブジェクトは削除されません。関連付けられているスキーマを削除する場合、データベース管理者(DBA)は、Oracle Enterprise Manager、SQL*Plusなどの標準的なデータベース管理ツールを使用する必要があります。
- アクティブではないワークスペースの識別および削除
アクティブではないワークスペースを識別および削除する方法について学習します。 - 完全開発環境でのワークスペースの削除
完全開発環境でワークスペースを削除します。 - ランタイム開発環境でのワークスペースの削除
ランタイム開発環境でワークスペースを削除します。
親トピック: 既存のワークスペースの管理
3.13.3.1 アクティブではないワークスペースの識別および削除
アクティブではないワークスペースを識別および削除する方法を学習します。
- アクティブではないワークスペースの識別方法
- 最近の更新をチェックしてアクティブではないワークスペースを識別
- サンプル・アプリケーションのみを持つワークスペースの表示
- アクティブではないワークスペースに関連付けられているリソースの削除
- アクティブではないワークスペースの削除
親トピック: ワークスペースの削除
3.13.3.1.1 アクティブではないワークスペースの識別方法
ホスティングされた大規模なOracle Application Expressインスタンスを管理している場合は、アクティブではないワークスペースを手動で削除すると、他のユーザーに対してリソースを開放できます。アクティブではないワークスペースを手動で削除するプロセスは、次のステップで構成されます。
-
ステップ1: アクティブではないワークスペースを識別します。最近の更新をチェックしてアクティブではないワークスペースを識別およびサンプル・アプリケーションのみを持つワークスペースの表示を参照してください。
-
Step 2: アクティブではない各ワークスペースに関連付けられているリソース(データベース・スキーマ、表領域およびデータファイル)を削除します。アクティブではないワークスペースに関連付けられているリソースの削除を参照してください。
-
ステップ3: アクティブではないワークスペースをOracle Application Expressから削除します。アクティブではないワークスペースの削除を参照してください。
ヒント:
アクティブではないワークスペースを体系的に消去するには、「ワークスペースのパージ」設定を構成する必要があります。アクティブではないワークスペースの消去を参照してください。
親トピック: アクティブではないワークスペースの識別および削除
3.13.3.1.2 最近の更新をチェックしてアクティブではないワークスペースを識別
ワークスペースがアクティブでないかどうかを判別する場合の最初のステップは、いくつかの基本ルールを確立することです。Application Expressエンジンのカレント・スキーマにあるOracle Application Expressアクティビティ・レコードに基づいてルールを決定する方法が一般的です。
次のDDL(データ定義言語)によって、2004年6月28日以前にリクエストされ、2004年6月10日以降アクティブではないすべてのワークスペースの表が作成されます。この例では、ワークスペースごとにApplication Expressエンジン・スキーマ内の最新の更新に関するキーを確認することで、アクティブでないかどうかが判別されます。
ALTER SESSION SET CURRENT_SCHEMA = APEX_18100; CREATE TABLE ws_to_purge AS SELECT c.security_group_id, c.company_name, c.admin_email, c.request_date, SYSDATE last_updated_on, 'Y' ok_to_delete FROM wwv_flow_provision_company c WHERE c.request_date <= to_date('20040628','YYYYMMDD') AND ( not exists (SELECT NULL /* Activity Log */ FROM wwv_flow_activity_log l WHERE l.security_group_id = c.security_group_id AND l.time_stamp > to_date('20040610','YYYYMMDD')) ) AND NOT EXISTS (SELECT NULL /* workspace applications */ FROM wwv_flows f WHERE f.security_group_id = c.security_group_id AND f.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Pages */ FROM wwv_flow_steps s WHERE s.security_group_id = c.security_group_id AND s.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Regions */ FROM wwv_flow_page_plugs p WHERE p.security_group_id = c.security_group_id AND p.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Items */ FROM wwv_flow_step_items i WHERE i.security_group_id = c.security_group_id AND i.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Templates */ FROM wwv_flow_templates t WHERE t.security_group_id = c.security_group_id AND t.last_updated_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* Files uploaded */ FROM wwv_flow_file_objects$ o WHERE o.security_group_id = c.security_group_id AND o.created_on > to_date('20040610','YYYYMMDD')) AND NOT EXISTS (SELECT NULL /* SQL Workshop history */ FROM wwv_flow_sw_sql_cmds s WHERE s.security_group_id = c.security_group_id AND s.created_on > to_date('20040610','YYYYMMDD'));
親トピック: アクティブではないワークスペースの識別および削除
3.13.3.1.3 サンプル・アプリケーションのみを持つワークスペースの表示
潜在的にアクティブでないワークスペースを識別するもう1つの方法は、「サンプル・アプリケーションのみを持つワークスペース」レポートを表示することです。
サンプル・アプリケーションのみを含んでいるレポートまたはワークスペースを表示するには、次の手順を実行します。
親トピック: アクティブではないワークスペースの識別および削除
3.13.3.1.4 アクティブではないワークスペースに関連付けられているリソースの削除
アクティブではないワークスペースを1つの表で識別した後、それらを削除します。
ノート:
アクティブではないワークスペースに関連付けられているスキーマ、表領域またはデータファイルを削除する前に、それらのリソースが他のワークスペースまたはアプリケーションで使用されていないことを確認してください。
アクティブではないワークスペースに関連付けられているリソースを削除するには、次の手順を実行します。
親トピック: アクティブではないワークスペースの識別および削除
3.13.3.1.5 アクティブではないワークスペースの削除
アクティブではないワークスペースに関連付けられているリソースを削除すると、そのワークスペースを削除できます。アクティブではないワークスペースは、Oracle Application Express管理サービス・アプリケーションを使用して手動で削除できます。また、次のPL/SQLの例に示すように、プログラムによって削除できます。
BEGIN FOR c1 IN (SELECT security_group_id FROM ws_to_purge WHERE ok_to_delete = 'Y') LOOP WWV_FLOW_PROVISIONING.TERMINATE_SERVICE_BY_SGID(c1.security_group_id); END LOOP; END;
親トピック: アクティブではないワークスペースの識別および削除
3.13.3.3 ランタイム開発環境でのワークスペースの削除
ランタイム開発環境でワークスペースを削除します。
ランタイム開発環境でワークスペースを削除するには、次の手順を実行します。
親トピック: ワークスペースの削除