ACE Director Alum Daniel Morgan, founder of Morgan's Library, is scheduling
complimentary technical Workshops on Database Security for the first 30
Oracle Database customers located anywhere in North America, EMEA, LATAM, or
APAC that send an email to
asra_us@oracle.com. Request a Workshop for
your organization today.
Purpose
Support utilities for DBMS_ILM; Integrated Lifecycle Management
AUTHID
DEFINER
Data Types
TYPE act_context IS PLSQL_RECORD ...
TYPE act_result IS PLSQL_RECORD ...
TYPE ilmobj IS PLSQL_RECORD ...
TYPE ilm_objpolicy_info IS PLSQL_RECORD ...
TYPE ilm_tab_objpolicy_info IS TABLE OF ...
TYPE jobresult IS PLSQL_RECORD ...
TYPE obj_stat IS PLSQL_RECORD ...
TYPE policy_context IS PL/SQL RECORD ...
TYPE tab_eval_objpolicy_info IS TABLE OF ...
TYPE tab_action IS PLSQL_TABLE OF ...
TYPE tab_depobjstate is TABLE OF ...
TYPE tab_iden is TABLE OF ...
TYPE tab_ilmjob is TABLE OF ...
TYPE tab_ilmjob_short IS TABLE OF ...
TYPE tab_numbers IS TABLE OF ...
TYPE tab_objpolupdate IS TABLE OF ...
TYPE tab_obj_stat_hash IS PLSQL TABLE OF ...
TYPE tab_par_jobinfo IS TABLE OF ...
TYPE tab_polname IS PLSQL TABLE OF ...
TYPE tab_rid_pair IS TABLE OF ...
TYPE tab_tbs_stats IS TABLE OF ...
CREATE OR REPLACE NONEDITIONABLE TYPE sys.objrank FORCE IS
OBJECT(rank number, obj# number);
CREATE OR REPLACE NONEDITIONABLE TYPE sys.tabobj#
AS TABLE OF objrank;
prvt_ilm.create_job_dep(
P_PARJOBNAME IN VARCHAR2,
p_jobname IN VARCHAR2,
P_payload IN CLOB,
p_tab_numbers IN sys.prvt_ilm.tab_numbers,
p_execution_id IN NUMBER)
RETURN BOOLEAN;
prvt_ilm.evaluate_ilm_policies(
p_tab_objpolicy_info IN OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash IN sys.prvt_ilm.tab_obj_stat_hash,
p_user IN VARCHAR2,
p_ignore_recent_ilm IN BOOLEAN);
prvt_ilm.execute_ilm_policies(
p_tab_objpolicy_info IN OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash IN sys.prvt_ilm.tab_obj_stat_hash,
p_user IN VARCHAR2,
p_ignore_recent_ilm IN BOOLEAN,
p_jobs IN NUMBER,
p_heavyjobs_in_ilmwindow IN BOOLEAN,
execmode IN NUMBER,
execution_id OUT NUMBER);
TBD
Overload 2
prvt_ilm.execute_ilm_policies(
p_tab_objpolicy_info IN OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash IN sys.prvt_ilm.tab_obj_stat_hash,
p_ignore_recent_ilm IN BOOLEAN,
p_jobs IN NUMBER,
p_heavyjobs_in_ilmwindow IN BOOLEAN,
execmode IN NUMBER,
execution_id IN NUMBER);
prvt_ilm.exec_ilm_action_icd(
act_code IN NUMBER)
polname IN VARCHAR2,
safeown IN VARCHAR2,
safeobjname IN VARCHAR2,
safesubobjname IN VARCHAR2,
objtype IN NUMBER,
execmode IN NUMBER,
scope IN NUMBER,
cmptype IN NUMBER,
cmplvl IN NUMBER,
flag IN
NUMBER,
tbs_name IN VARCHAR2,
owner IN VARCHAR2,
objname IN VARCHAR2,
strvn IN NUMBER,
stblk IN NUMBER,
endrfn IN NUMBER,
endblk IN NUMBER,
objd IN
NUMBER,
colname IN VARCHAR2);
prvt_ilm.exec_ilm_action_row(
p_action IN sys.prvt_ilm.act_context,
p_polctx IN sys.prvt_ilm.policy_context,
p_execmode IN NUMBER,
p_actresult IN OUT sys.prvt_ilm.act_result);
prvt_ilm.filter_for_move(
p_tab_objpolicy_info IN OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash IN sys.prvt_ilm.tab_obj_stat_hash);
RETURN BOOLEAN;
prvt_ilm.gen_rid_range(
ownname IN VARCHAR2,
objname IN VARCHAR2,
max_bytes IN NUMBER,
partname IN VARCHAR2,
objd IN NUMBER,
min_rfn IN NUMBER,
min_block_id IN NUMBER)
RETURN sys.prvt_ilm.tab_rid_pair;
prvt_ilm.gegt_job_info(
p_execution_id IN NUMBER,
p_execution_flag IN NUMBER,
P_JOBTYPE IN NUMBER,
P_JOBTYPE1 IN NUMBER,
p_jobname IN VARCHAR2)
RETURN sys.prvt_ilm.tab_ilmjob_short;
prvt_ilm.get_nextn_objpol(
p_jobs IN NUMBER,
p_ilm_tab_objpolicy OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash OUT sys.prvt_ilm.tab_obj_stat_hash,
p_flagS IN NUMBER);
prvt_ilm.get_policy_info(
ilm_scope IN BINARY_INTEGER,
p_user IN VARCHAR2,
p_tab_objpolicy_info OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash OUT sys.prvt_ilm.tab_obj_stat_hash,
p_nobj IN NUMBER,
p_ignore_recent_ilm IN BOOLEAN,
p_flags IN NUMBER);
TBD
Overload 2
prvt_ilm.get_policy_info(
objowner IN VARCHAR2,
object_name IN VARCHAR2,
subobject_name IN VARCHAR2,
p_user IN VARCHAR2,
p_tab_objpolicy_info OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash OUT sys.prvt_ilm.tab_obj_stat_hash,
isdba IN BOOLEAN,
P_policy_name IN VARCHAR2);
TBD
Overload 3
prvt_ilm.get_policy_info(
policy_name IN VARCHAR2,
p_user IN VARCHAR2,
p_tab_objpolicy_info OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash OUT sys.prvt_ilm.tab_obj_stat_hash);
TBD
Overload 4
prvt_ilm.get_policy_info(
execution_id IN NUMBER,
p_tab_objpolicy_info OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_obj_stat_hash OUT sys.prvt_ilm.tab_obj_stat_hash,
p_nobj IN NUMBER);
TBD
Overload 5
prvt_ilm.get_policy_info(
p_tabobj# IN sys.tabobjJ#,
p_tab_objpolicy_info OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
P_policy_name IN VARCHAR2,
p_flags IN NUMBER);
prvt_ilm.heat_map_on(
p_heat_map_on OUT BOOLEAN,
p_heat_map_on_TIME OUT TIMESTAMP);
DECLARE
phmo BOOLEAN;
phmot TIMESTAMP;
BEGIN
prvt_ilm.heat_map_on(phmo, phmot);
IF phmo THEN
dbms_output.put_line('Heat Maps Is On');
ELSE
dbms_output.put_line('Heat Maps Is Off');
END IF;
dbms_output.put_line(phmot);
END;
/ Heat Maps Is Off
30-MAR-18 10.07.36.000000 PM
prvt_ilm.ilm_dict_cleanup(assert_only IN BOOLEAN);
exec prvt_ilm.ilm_dict_cleanup(FALSE);
*
ERROR at line 1:
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at "SYS.PRVT_ILM", line 5247
ORA-06512: at "SYS.PRVT_ILM", line 5144
ORA-06512: at line 1
prvt_ilm.ilm_taskComplete(task_id IN NUMBER)
RETURN BOOLEAN;
DECLARE
retVal BOOLEAN;
BEGIN
IF prvt_ilm.ilm_taskComplete(648) THEN
dbms_output.put_line(Completed');
ELSE
dbms_output.put_line(Not Completed');
END IF;
END;
/
prvt_ilm.insert_tab_ILMjob(
p_tab_objpolicy_info IN sys.prvt_ilm.ilm_tab_objpolicy_info,
p_tab_ilmjob IN sys.prvt_ilm.tab_ilmjob,
p_execution_id IN NUMBER,
p_heavyjobs_in_ilmwindow IN BOOLEAN,
p_user IN VARCHAR2,
p_ilmtask_state IN NUMBER,
p_creation_time IN TIMESTAMP,
p_start_time IN TIMESTAMP,
p_completion_time IN TIMESTAMP);
prvt_ilm.insert_tab_ilmTaskInfo_DDL(
p_tab_objpolicy_info IN sys.prvt_ilm.ilm_tab_objpolicy_info,
p_execution_id IN NUMBER,
p_user IN VARCHAR2,
p_ilmtask_state IN NUMBER,
p_creation_time IN TIMESTAMP,
p_start_time IN TIMESTAMP,
p_heavyjobs_in_ilmwindow IN BOOLEAN);
BEGIN
IF prvt_ilm.isSupLogEnabled THEN
dbms_output.put_line('Supplemental Logging Is Enabled');
ELSE
dbms_output.put_line('Supplemental Logging Is Not Enabled');
END IF;
END;
/ Supplemental Logging Is Enabled
prvt_ilm.stopJobs1(
p_execution_id IN NUMBER,
drop_running_jobs IN BOOLEAN,
drop_only_heavy IN BOOLEAN,
p_flag IN NUMBER,
p_jobtype1 IN NUMBER,
p_jobname IN VARCHAR2);
prvt_ilm.store_valid_indexes(
p_table_owner IN VARCHAR2,
p_table_name IN VARCHAR2,
p_job_name IN VARCHAR2,
p_execution_id IN VARCHAR2,
p_state IN NUMBER,
p_n_rebuild_att IN NUMBER);
prvt_ilm.verify_precondition_policies(
p_tab_objpolicy_info IN OUT sys.prvt_ilm.ilm_tab_objpolicy_info,
p_ignore_recent_ilm IN BOOLEAN,
p_tab_obj_stat_hash IN
sys.prvt_ilm.tab_obj_stat_hash);