前回を作成したルールを実行してみましょう。
評価の結果は必ず真になるので、表領域移動、圧縮は必ず実行されます。

var v_taskid NUMBER
exec DBMS_ILM.EXECUTE_ILM(task_id=>:v_taskid, -
owner=>'SCOTT',object_name=>'EMP2')

PL/SQLプロシージャが正常に完了しました。


スキーマscott、表EMP2に対するルールが実行されました。
実行したルールのタスクIDはv_taskidに格納されます。

SQL> SELECT task_id, policy_name, selected_for_execution
  2  FROM dba_ilmevaluationdetails WHERE task_id=:v_taskid;

   TASK_ID POLICY_NAME                                                                                                                     SELECTED_FOR_EXECUTION
---------- -------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------
        13 P4                                                                                                                              SELECTED FOR EXECUTION
        13 P3                                                                                                                              SELECTED FOR EXECUTION


実行結果を確認します。
先ほどのv_taskidを条件に利用します。
「SELECTED FOR EXECUTION」で実行されたことを確認できました。

SELECT job_name,job_state,start_time,completion_time
FROM dba_ilmresults WHERE task_id=:v_taskid;

JOB_NAME                                                                                                                        JOB_STATE
-------------------------------------------------------------------------------------------------------------------------------- -----------------------------------
START_TIME                                                                  COMPLETION_TIME
--------------------------------------------------------------------------- ---------------------------------------------------------------------------
ILMJOB16                                                                                                                        COMPLETED SUCCESSFULLY
16-08-19 01:00:44.183299                                                    16-08-19 01:01:06.404331


dba_ilmresultsビューでルールの実行結果を確認できます。
job_state列がCOMPLETES SUCCESSFULLYとなっていることを確認します。

SQL> select tablespace_name from dba_segments where segment_name='EMP2';

TABLESPACE_NAME
------------------------------
TBS1


ルールが実行されてemp2表のテーブルスペースが移動したことを確認できました。