Friday, June 16, 2017

Oracle DBCA Configuration Assistant fails with Error in Process: /perl/bin/perl error

Hello everybody,

Troubleshooting this error today Oracle DBCA 12c:

Error while executing "$ORACLE_HOME/db/rbdms/admin/dbmssml.sql". Refer to "ORACLE_HOME/cfgtoollogs/dbca/orcl/dbmssml0.log" for more details. Error in Process: /perl/bin/perl





You will notice that the execution failed with a “Segmentation fault”. In looking at the command, I noticed that this is running perl from the $ORACLE_HOME/perl/bin directory. When I did a “which perl”, the perl that the operating system is using is coming from /usr/bin/perl. This is not the correct one being used by the root.sh script. Also if I did a “perl -v” from the command line it returns that the version of perl is 5.10.


Now that it is established that the operating system installed perl is fine, I took a look at the perl in $ORACLE_HOME/perl/bin. When I navigated to the $ORACLE_HOME/perl/bin directory and executed “perl -v”; I was met with the “Segmentation fault” issue (above). Knowing that the problem is within the Oracle binaries; how can this be resolved?
To resolve this “Segmentation fault” issue, I had to recompile the perl binaries that Oracle uses in the $ORACLE_HOME path. 
To do this, I had to download and recompile the perl binaries in the $ORACLE_HOME directories.

Then:


1- $wget http://www.cpan.org/src/5.0/perl-5.14.4.tar.gz
2- $tar -xzf perl-5.14.4.tar.gz
3- $cd perl-5.14.4 <br>$./Configure -des -Dprefix=$ORACLE_HOME/perl $make
4- $make test



5- $make install



Now, finally you should see your perl on ORACLE_HOME working as well as your DBCA 12c:


NOTE: If you retry and the errors appear again, please double check the logs
and see if the variable is not still getting the old values of perl.
Sometimes it happens.



I hope it helps,
Thiago Guimaraes


No comments:

Post a Comment