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
Global Service Manager Validation Utilities. The package header refers to it as "DBMS package for GWM fixed operations"
AUTHID
DEFINER
Dependencies
DBMS_SYS_ERROR
Documented
Yes. Not in the TYPES and PACKAGES reference but rather in the ADMINISTRATOR'S GUIDE
Exceptions
Error Code
Reason
ORA-03770
Incorrect shard is given for replace
First Available
12.2
Security Model
Owned by SYS with EXECUTE granted to DBA, GSMCATUSER, GSMUSER_ROLE, and SYSDG
dbms_gsm_fix.configRMAN(
db_registered IN BOOLEAN,
retention IN BINARY_INTEGER,
pdb IN VARCHAR2,
device_config IN VARCHAR2,
channel_config IN VARCHAR2,
sdb_cat_dbid IN VARCHAR2,
cookie OUT BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(configRMAN, NONE);
Validate that database being replaced is the correct one by comparing input parameters with parameters for this database
dbms_gsm_fix.crossValidateDatabase(
minobj_num IN NUMBER,
maxobj_num IN NUMBER,
dbid IN NUMBER);
exec dbms_gsm_fix.crossValidateDatabase(100, 200, 1262297360);
*
ERROR at line 1:
ORA-03770: incorrect shard is given for replace:
ORA-06512: at "SYS.DBMS_GSM_FIX", line 236
ORA-06512: at line 1
dbms_gsm_fix.deleteBackups(
db_unique_name IN VARCHAR2,
pdb IN VARCHAR2,
tags IN VARCHAR2,
obsolete IN BINARY_INTEGER,
sdb_cat_dbid IN VARCHAR2,
cookie OUT BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(deleteBackups, NONE);
dbms_gsm_fix.listBackups(
db_unique_name IN VARCHAR2,
pdb IN VARCHAR2,
scn IN BINARY_INTEGER,
controlfile IN BINARY_INTEGER,
summary IN BINARY_INTEGER,
sdb_cat_dbid IN VARCHAR2,
cookie OUT
BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(listBackups, NONE);
dbms_gsm_fix.restoreBackups(
db_unique_name IN VARCHAR2,
pdb IN VARCHAR2,
scn IN BINARY_INTEGER,
controlfile IN BINARY_INTEGER,
sdb_cat_dbid IN VARCHAR2,
cookie OUT BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(restoreBackups, NONE);
dbms_gsm_fix.updateWalletForBackup(
rc_conn_desc IN VARCHAR2,
rc_user IN VARCHAR2,
rc_pwd IN VARCHAR2,
db_conn_desc IN VARCHAR2,
db_user IN VARCHAR2,
db_pwd IN VARCHAR2,
bak_tgt IN BINARY_INTEGER,
pdb IN VARCHAR2,
sdb_cat_dbid IN VARCHAR2,
status OUT BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(updateWalletForBackup, NONE);
dbms_gsm_fix.validateBackups(
db_unique_name IN VARCHAR2,
pdb IN VARCHAR2,
scn IN BINARY_INTEGER,
controlfile IN BINARY_INTEGER,
header IN BINARY_INTEGER,
sdb_cat_dbid IN VARCHAR2,
cookie OUT BINARY_INTEGER);
PRAGMA SUPPLEMENTAL_LOG_DATA(validateBackups, NONE);
Validate database existence and return local DB info
Overload 1
dbms_gsm_fix.validateDatabase(
dbpool IN VARCHAR2,
db_unique_name OUT VARCHAR2,
instances OUT NUMBER,
cloud_name IN VARCHAR2 DEFAULT NULL);
TBD
Overload 2
dbms_gsm_fix.validateDatabase(
dbpool IN VARCHAR2,
db_unique_name OUT VARCHAR2,
instances OUT NUMBER,
cloud_name IN VARCHAR2 DEFAULT NULL,
hostname OUT VARCHAR2,
agent_port OUT NUMBER,
db_sid OUT VARCHAR2,
oracle_home OUT VARCHAR2,
html_port IN NUMBER DEFAULT NULL,
registration_pass IN VARCHAR2 DEFAULT NULL,
cat_host IN VARCHAR2 DEFAULT NULL,
dbid OUT NUMBER,
conversion_status OUT VARCHAR2,
gg_service IN VARCHAR2 DEFAULT NULL,
charset IN VARCHAR2 DEFAULT NULL,
ncharset IN VARCHAR2 DEFAULT NULL);
TBD
Overload 3
dbms_gsm_fix.validateDatabase(
dbpool IN
VARCHAR2,
db_unique_name OUT VARCHAR2,
instances OUT NUMBER,
cloud_name IN VARCHAR2 DEFAULT NULL,
hostname OUT VARCHAR2,
agent_port OUT NUMBER,
db_sid OUT VARCHAR2,
oracle_home OUT VARCHAR2,
html_port IN NUMBER DEFAULT NULL,
registration_pass IN VARCHAR2 DEFAULT NULL,
cat_host IN VARCHAR2 DEFAULT NULL,
dbid OUT NUMBER,
conversion_status OUT VARCHAR2,
gg_service IN VARCHAR2 DEFAULT NULL,
charset IN VARCHAR2 DEFAULT NULL,
ncharset IN VARCHAR2 DEFAULT NULL,
is_cdb IN NUMBER DEFAULT NULL,
pdb_name OUT VARCHAR2,
pdb_id OUT NUMBER);
Validate parameters on database to-be-added to configuration by user.
Note the warnings and errors. They are not just about sharding. They are a good idea in all cases.
dbms_gsm_fix.validateShard(reptype IN VARCHAR2 DEFAULT 'DG');
SQL> exec dbms_gsm_fix.validateShard('OGG');
INFO: Golden Gate shard validation requested.
INFO: Database role is PRIMARY.
INFO: Database name is ORABASE2.
INFO: Database unique name is orabase2.
INFO: Database ID is 549318987.
INFO: Database open mode is READ WRITE.
WARNING: Database not in archivelog mode.
WARNING: Flashback is off.
WARNING: Force logging is off.
INFO: Database platform is Microsoft Windows x86 64-bit.
INFO: Database character set is AL32UTF8. This value must match the character set of the catalog database.
INFO: 'compatible' initialization parameter validated successfully.
INFO: Database is a multitenant container database.
INFO: Current container is CDB$ROOT.
INFO: Database is using a server parameter file (spfile).
WARNING: db_create_file_dest is not set.
INFO: db_recovery_file_dest set to: 'C:\app2\oracle\recovery_area'
INFO: db_files=200. Must be greater than the number of chunks and/or tablespaces to be created in the shard.
INFO: remote_login_passwordfile set to EXCLUSIVE.
WARNING: db_file_name_convert is not set.
ERROR: GSMUSER account status is invalid: EXPIRED & LOCKED
ERROR: GSMADMIN_INTERNAL does not have READ privilege on DATA_PUMP_DIR.
ERROR: GSMADMIN_INTERNAL does not have WRITE privilege on DATA_PUMP_DIR.
INFO: DATA_PUMP_DIR is 'C:\app2\oracle\admin\orabase2\dpdump\'.