
After creating DBMS scheduler external job for Oracle RAC RMAN full database backup, I have encountered ORA-27369 & ORA-06512 oracle error while manual test run.
SQL> exec dbms_scheduler.run_job('RMAN_FULL_BACKUP'); BEGIN dbms_scheduler.run_job('RMAN_FULL_BACKUP'); END; * ERROR at line 1: ORA-27369: job of type EXECUTABLE failed with exit code: Input/output error ORA-06512: at "SYS.DBMS_ISCHED", line 185 ORA-06512: at "SYS.DBMS_SCHEDULER", line 486 ORA-06512: at line 1
After diagnosing “ADDITIONAL_INFO” column from “ALL_SCHEDULER_JOB_RUN_DETAILS” dictionary view with the help of following query, Than i realize something went wrong with launching external job due to “login executable not setuid-root”.
SQL> select job_name, additional_info from ALL_SCHEDULER_JOB_RUN_DETAILS where job_name='RMAN_FULL_BACKUP'; ... ... JOB_NAME ----------------------------------------------------------------- ADDITIONAL_INFO ---------------------------------------------------------------------------------------------------- EXTERNAL_LOG_ID="job_173557_54754", USERNAME="oracle" RMAN_FULL_BACKUP EXTERNAL_LOG_ID="job_197309_55531", ORA-27369: job of type EXECUTABLE failed with exit code: Input/output error STANDARD_ERROR="Launching external job failed: Login executable not setuid-root"
Solution:
Run root.sh script file on Database home with the help of root user, as follows:
-bash-4.1# whoami root
-bash-4.1# cd /u01/app/oracle/product/11.2.0/db_1
-bash-4.1# ./root.sh Performing root user operation for Oracle 11g The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/11.2.0/db_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: The contents of "dbhome" have not changed. No need to overwrite. The contents of "oraenv" have not changed. No need to overwrite. The contents of "coraenv" have not changed. No need to overwrite. Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. Finished product-specific root actions. -bash-4.1#
After performing above solution, my DBMS scheduler external job ran successful.
Stay tune. 🙂