Article Number
000037776
Applies To
RSA Product Set: Identity Governance & Lifecycle
RSA Version/Condition: 7.x
Issue
When attempting to backup (export) an RSA Identity Governance & Lifecycle database using the RSA-supplied backup script home/oracle/database/DBA/AVDB/scripts/AVDB_Export_AVUSER.sh,
the export fails with one of the following errors depending on the RSA Identity Governance & Lifecycle version:
7.1.1 / 7.2.0
ORA-39002: invalid operation
ORA-06512: at "SYS.DBMS_SYS_ERROR", line 79
ORA-06512: at "SYS.DBMS_DATAPUMP", line 4087
ORA-06512: at "SYS.DBMS_DATAPUMP", line 4338
ORA-06512: at line 1
7.1.0 does not fail in this scenario.
7.0.x
ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-39087: directory name AVEKSA_EXPORTIMPORT_DIRECTORY is invalid
6.x
ORA-39002: invalid operation
ORA-39070: Unable to open the log file.
ORA-29283: invalid file operation
ORA-06512: at "SYS.UTL_FILE", line 475
ORA-29283: invalid file operation
Cause
The user (AVUSER) running the database utilities (import or export) is missing READ, WRITE permission on the database directory, or the oracle user (running the backup script) does not have the OS read/write permission to the output folder.
Resolution
- Check that the database directory is defined in the database.
- Run the following SQL as SYSDBA:
select * from dba_directories where directory_name like 'AVEKSA%';
- This should return the following:
DIRECTORY_NAME DIRECTORY_PATH
------------------------------------------------------------
AVEKSA_EXPORTIMPORT_DIRECTORY /home/oracle/AveksaExportImportDir
- If the path is missing or incorrect, use the following SQL to correct the directory path:
create or replace directory AVEKSA_EXPORTIMPORT_DIRECTORY as '/home/oracle/AveksaExportImportDir';
- The path specified above must also be the same in the /home/oracle/Aveksa_System.cfg file and the /home/oracle/setDeployEnv.sh script. If not, make them the same.
- Check the read/write privileges on the directory path:
- Run the following SQL as SYSDBA:
select * from all_tab_privs where table_name like 'AVEKSA%';
- This should return the following:
Image description
- If this query returns no rows, then grant the needed access to AVUSER by running the following SQL as SYSDBA:
grant read, write on directory AVEKSA_EXPORTIMPORT_DIRECTORY to AVUSER;
NOTE:
- If -o option is specified for AVDB_Export_AVUSER.sh with the full path to a directory for the output file, ensure that OS permissions are sufficient for the 'oracle' user to read/write to that directory.
If -o option is not specified, the export file is saved to /home/oracle/AveksaExportImportDir/
- In 6.x two additional directories exist that require read/write privileges to be granted to AVUSER. These directories and paths are as follows:
AVEKSA_REPORTS_DIRECTORY /home/oracle/AveksaReportsDir
AVEKSA_DATA_DIRECTORY /home/oracle/AveksaDataDir