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
APIs for provisioning and managing PDBs within a
pod in an Autonomous Database
Translated into a comprehensible language it appears that new words such as POD and previously used words that likely have a new definition such as TENANT appear to relate this and other POD_CDB objects to the new Autonomous Database.
It is likely they have no relevance to other Oracle Database deployments but that supposition is unconfirmed.
If the suspicion is confirmed it is likely that Autonomous Databases are not only not serviced by SYS but are not serviced by RMAN either or, that RMAN is called using a new and different set of built-in PL/SQL packages.
The source for the two known dependent objects could not be found so a
valid deployment of this package was not possible.
AUTHID
DEFINER
Constants
Name
Data Type
Value
Health Check Constants
CHECK_HEALTH_BASIC
NUMBER
1
CHECK_HEALTH_ADVANCED
NUMBER
2
Type Definitions
MAX_BINDS
NUMBER
10
BIND_NAMELEN
NUMBER
16
Data Types
TYPE bind_var_type IS VARRAY(MAX_BINDS) OF anydata;
TYPE bind_name_type IS VARRAY(MAX_BINDS) OF VARCHAR2(BIND_NAMELEN);
LINE/COL ERROR
-------- -----------------------------------------------------------------
0/0 PL/SQL: Compilation unit analysis terminated
51/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
110/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
131/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
153/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
158/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
183/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
197/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
224/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
229/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
249/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
254/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
274/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
284/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
352/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
357/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
375/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
388/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
407/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
432/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
437/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
448/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
465/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
486/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
507/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
519/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
523/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
532/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
543/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
571/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
576/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
590/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
594/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
605/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
613/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
619/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
626/5 PLW-07203: parameter 'REPORT' may benefit from use of the NOCOPY
compiler hint
644/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
650/5 PLW-07203: parameter 'REPORT' may benefit from use of the NOCOPY
compiler hint
657/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
668/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
673/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
679/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
685/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
696/37 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
700/33 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
713/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
737/42 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
765/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
776/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
787/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
797/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
808/5 PLW-07203: parameter 'STATUS' may benefit from use of the NOCOPY
compiler hint
813/5 PLW-07203: parameter 'POOL_PDB_NAME' may benefit from use of the
NOCOPY compiler hint
817/5 PLW-07203: parameter 'PDB_NAME' may benefit from use of the
NOCOPY compiler hint
864/28 PLS-00201: identifier 'POD_RSRC_IINFO_ARR' must be declared
pod_cdb_admin.backup_archivelog(
run_in_sync IN BOOLEAN DEFAULT FALSE,
job_id IN VARCHAR2 DEFAULT NULL,
job_type IN VARCHAR2 DEFAULT NULL,
job_subtype IN VARCHAR2 DEFAULT NULL,
rcvcat_connstr IN VARCHAR2 DEFAULT NULL,
retention_days IN NUMBER DEFAULT 60,
debug IN VARCHAR2 DEFAULT NULL,
savelog IN BOOLEAN DEFAULT FALSE,
tag IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
pod_cdb_admin.backup_cdb(
is_full_backup IN BOOLEAN DEFAULT FALSE,
is_cum_incr IN BOOLEAN DEFAULT FALSE,
backup_outstanding_pdbs IN BOOLEAN DEFAULT FALSE,
run_in_sync IN BOOLEAN DEFAULT FALSE,
job_id IN VARCHAR2 DEFAULT NULL,
job_type IN VARCHAR2 DEFAULT NULL,
job_subtype IN VARCHAR2 DEFAULT NULL,
rcvcat_connstr IN VARCHAR2 DEFAULT NULL,
retention_days IN NUMBER DEFAULT 60,
debug IN VARCHAR2 DEFAULT NULL,
savelog IN BOOLEAN DEFAULT FALSE,
tag IN VARCHAR2 DEFAULT NULL,
restart IN BOOLEAN DEFAULT FALSE,
status OUT CLOB);
TBD
Overload 2
pod_cdb_admin.backup_cdb(
request IN CLOB,
status OUT CLOB);
Same as clone_tenant except that it is called by dbms_scheduler job
Overload 1
pod_cdb_admin.clone_tenant_job(
command_id IN VARCHAR2,
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
source_pdb_name IN VARCHAR2,
source_dblink_user IN VARCHAR2 DEFAULT NULL,
source_dblink_passwd IN VARCHAR2 DEFAULT NULL,
source_dblink_conn IN VARCHAR2 DEFAULT NULL,
metadata_only IN BOOLEAN DEFAULT FALSE,
refreshable IN BOOLEAN DEFAULT FALSE,
max_size IN VARCHAR2 DEFAULT NULL,
cpu_count IN NUMBER DEFAULT NULL,
rsrc_cpu_count IN NUMBER DEFAULT NULL,
max_pdbs IN NUMBER DEFAULT 0,
admin_user IN VARCHAR2 DEFAULT 'ADMIN',
admin_passwd IN VARCHAR2 DEFAULT NULL,
tenant_key IN VARCHAR2 DEFAULT NULL,
rcvcat_connstr IN VARCHAR2 DEFAULT NULL,
is_passwd_hash IN BOOLEAN DEFAULT FALSE,
pool_pdb IN BOOLEAN DEFAULT FALSE,
pool_tenant_name IN VARCHAR2 DEFAULT NULL,
ace_hosts IN json_array_t DEFAULT NULL,
ocid_cloud_database_name IN VARCHAR2 DEFAULT NULL,
ocid_tenant_name IN VARCHAR2 DEFAULT NULL,
ocid_compartment_id IN VARCHAR2 DEFAULT NULL,
database_name IN VARCHAR2 DEFAULT NULL,
region IN VARCHAR2 DEFAULT NULL,
request_id IN VARCHAR2 DEFAULT NULL,
extreme_availability IN BOOLEAN DEFAULT FALSE,
open_pdb IN BOOLEAN DEFAULT TRUE);
pod_cdb_admin.close_tenant(
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
force IN CHAR DEFAULT 'N',
ocid_cloud_database_name IN VARCHAR2 DEFAULT NULL,
ocid_tenant_name IN VARCHAR2 DEFAULT NULL,
ocid_compartment_id IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
TBD
Overload 2
pod_cdb_admin.close_tenant(
request IN CLOB,
status OUT CLOB);
pod_cdb_admin.delete_backup_pdb(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant for rewind
pdb_name - name of pdb associated with tenant
run_in_sync - run job in sync mode
rcvcat_connstr - recovery catalog connect string
status - status from running the operation
pod_cdb_admin.gen_partial_archivelog(
request IN CLOB,
status OUT CLOB);
Args:
job_type - job type from WLS
job_subtype - job subtype from WLS
pdbcs_connstr - pdbcs connect string
debug - debug information passed to script
savelog - TRUE if output needs to be saved as OS file
status - OUT status containing return code, error messages
pod_cdb_admin.get_pdb_backups(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant for backup
pdb_name - name of pdb associated with tenant
start_date - the least recent date interested
end_date - the most recent date interested
rcvcat_connstr - recovery catalog connect string
pod_dbid - dbid of the pod
pdb_guid - guid of the pdb
retention_days - retention days for backup
status - a list of dates when the backup is being made
Kills database user sessions during wallet rotation. If PDB name is null, then it is a regional wallet rotation and all
PDB DB user session under a tenant tenant_name should be cleaned. If pdb_name is not null, then it is an instance wallet rotation and the target pdb's db user session will be cleaned.
pod_cdb_admin.kill_remove_sessions(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant
tenant_key - tenant key
pdb_name - name of the pdb
status - OUT status containing return code, error messages
pod_cdb_admin.open_tenant(
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
open_mode IN VARCHAR2 DEFAULT 'READ WRITE',
restricted IN CHAR DEFAULT 'N',
cpu_count IN NUMBER DEFAULT NULL,
rsrc_cpu_count IN NUMBER DEFAULT NULL,
max_size IN VARCHAR2 DEFAULT NULL,
ocid_cloud_database_name IN VARCHAR2 DEFAULT NULL,
ocid_tenant_name IN VARCHAR2 DEFAULT NULL,
ocid_compartment_id IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
TBD
Overload 2
pod_cdb_admin.open_tenant(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of tenant to unprovision
pdb_name - name of pdb associated with tenant
open_mode - mode in which PDB to be opened
cpu_count - configured cpu during provision
rsrc_cpu_count - configured rsrc cpu during provision
max_size - configured max_size during provision/update
ocid_cloud_database_name - db name generated by OCI for the PDB
ocid_tenant_name - same as tenant_name
ocid_compartment_id - OCI compartment id of the PDB
status - OUT status from operation
Rewind PDB to a specific 'flashback' restore point
Overload 1
pod_cdb_admin.post_rewind_pdb(
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
omode IN VARCHAR2,
job_status IN VARCHAR2,
rcvcat_connstr IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
TBD
Overload 2
pod_cdb_admin.post_rewind_pdb(
request IN CLOB,
status OUT CLOB);
pod_cdb_admin.refresh_tenant(
request IN CLOB,
status OUT CLOB);
Args: tenant_name - name of tenant which owns the app root/pdbs
pdb_name - name of newly provisioned app root
source_pdb_name - name of the source pdb from which to clone
source_dblink_user - (optional) user name to connect to at source db
source_dblink_passwd - (optional) user passwd to connect to at source db
source_dblink_conn - (optional) connect string, if cloning over a dblink
max_size - (optional) max size for the PDB
cpu_count - cpu count for the PDB
rsrc_cpu_count - cpu count used to set resource parameters of the pdb
max_tenants - maximum possible number of pdbs under this tenant
create_seed - create application seed as part of provisioning?
seed_source_info - info about seed pdb from which to create app seed
ace_hosts - list of ACL
status - OUT status (error code and/or details)
provision a new tenant PDB under an Application Root Container
pod_cdb_admin.provision_tenant(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of tenant which owns the newly cloned pdb
pdb_name - name of newly cloned pdb
source_pdb_name - name of the source pdb
source_dblink_user - (optional) user name to connect to at source db
source_dblink_passwd - (optional) user passwd to connect to at source db
source_dblink_conn - connect string, if cloning over a dblink
max_size - max size for the PDB
cpu_count - cpu count for the PDB
rsrc_cpu_count - cpu count used to set resource parameters of the pdb
rcvcat_connstr - recovery catalog connect string
ace_hosts - list of ACL
ocid_cloud_database_name - db name generated by OCI for the PDB
ocid_tenant_name - same as tenant_name
ocid_compartment_id - OCI compartment id of the PDB
database_name - database name provided by user
region - region information
status - OUT status/error code
pod_cdb_admin.resize_tenant(
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
cpu_count IN NUMBER DEFAULT NULL,
rsrc_cpu_count IN NUMBER DEFAULT NULL,
max_size IN VARCHAR2 DEFAULT NULL,
attempt_shrink IN BOOLEAN DEFAULT FALSE,
skip_close_pdbs IN BOOLEAN DEFAULT FALSE,
patching IN BOOLEAN DEFAULT FALSE,
reloc_inst IN VARCHAR2 DEFAULT NULL,
ocid_cloud_database_name IN VARCHAR2 DEFAULT NULL,
ocid_tenant_name IN VARCHAR2 DEFAULT NULL,
ocid_compartment_id IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
TBD
Overload 2
pod_cdb_admin.resize_tenant(
request IN CLOB,
status OUT CLOB);
pod_cdb_admin.rewind_cdb(
request IN CLOB,
status OUT CLOB);
Args:
rewind_time - time to which to recover to
fb_time - 0 means use pitr, > 0 means use flashback if possible
run_in_sync - run job in sync mode
job_id - job id from WLS (unused)
job_type - job type from WLS
rcvcat_connstr - recovery catalog connect string
debug - debug information passed to script
savelog - TRUE if output needs to be saved as OS file
status - status from running the operation
pod_cdb_admin.rewind_pdb(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant for rewind
pdb_name - name of pdb associated with tenant
fb_time - 0 means use pitr, > 0 means use flashback if possible
rewind_time - Time to which to recover to
run_in_sync - run job in sync mode
job_id - job id from WLS (unused)
job_type - job type from WLS
rcvcat_connstr - recovery catalog connect string
debug - debug information passed to script
savelog - TRUE if output needs to be saved as OS file
ocid_cloud_database_name - db name generated by OCI for the PDB
ocid_tenant_name - same as tenant_name
ocid_compartment_id - OCI compartment id of the PDB
status - status from running the operation
Rewind a PDB (always SYNC - waits for rewind to finish)
pod_cdb_admin.rewind_pdb_sync(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant for rewind
pdb_name - name of pdb associated with tenant
fb_time - 0 means use pitr, > 0 means use flashback if possible
rewind_time - time to which to recover to
job_id - job id from WLS (unused)
job_type - job type from WLS
rcvcat_connstr - recovery catalog connect string
req_id - request id
debug - debug information passed to script
savelog - TRUE if output needs to be saved as OS file
ocid_cloud_database_name - db name generated by OCI for the PDB
ocid_tenant_name - same as tenant_name
ocid_compartment_id - OCI compartment id of the PDB
status - status from running the operation
Run a SQL statement, optionally with lockdown disabled
pod_cdb_admin.run_stmt(
container_name IN VARCHAR2 DEFAULT
NULL, -- container in which to run statement
sql_stmt IN VARCHAR2, -- SQL statement to run.
parse_only IN BOOLEAN DEFAULT FALSE, -- sufficient to call dbms_sql.parse()
bind_names IN bind_name_type DEFAULT NULL, -- name of bind variables
bind_vals IN bind_var_type DEFAULT NULL, -- values of bind variables
disable_lockdown IN BOOLEAN DEFAULT FALSE,
mask_password IN BOOLEAN DEFAULT FALSE,
run_as_user IN VARCHAR2 DEFAULT NULL);
pod_cdb_admin.set_acl_pdb(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name - name of the tenant to modify acl
pdb_name - name of pdb associated with tenant
p_ace_hosts - json array of host name/ip to setup
status - status from running the operation
Set logging attributes. Unset attributes that are cleared (except default values)
pod_cdb_admin.set_logging(
request IN CLOB,
status OUT CLOB);
Args:
tenant_name
pdb_name
p_level - logging level
p_trcfile - write to trace file
p_alertlog - write to alert log
p_stdout - write to standard output
p_table - write to log table
p_autonomous - if logging to table, do logging in autonomous txn?
p_queue - write to output queue?
status - out
pod_cdb_admin.set_tenant_cpu_count(
tenant_name IN VARCHAR2,
pdb_name IN VARCHAR2,
cpu_count IN NUMBER DEFAULT NULL,
rsrc_cpu_count IN NUMBER DEFAULT NULL, instances_cpu_in IN pod_rsrc_iinfo_arr DEFAULT NULL,
skip_close_pdbs IN BOOLEAN DEFAULT FALSE,
open_mode IN VARCHAR2 DEFAULT NULL,
status OUT CLOB);
TBD
Undocumented
Overload 2
pod_cdb_admin.set_tenant_cpu_count(
request IN CLOB,
status OUT CLOB);
pod_cdb_admin.update_async_job_status(
p_job_id IN VARCHAR2 DEFAULT NULL,
p_command_id IN VARCHAR2,
p_job_status IN VARCHAR2,
p_err_msg IN VARCHAR2 DEFAULT NULL,
p_api_result IN CLOB DEFAULT NULL)
TBD
Overload 2
pod_cdb_admin.update_async_job_status(request IN CLOB);