2.2.2 About EXTPROC Configuration for OML4R
OML4R uses the default configuration of extproc.
Note:
When using OML4R with Oracle Database 12c or later, the default
extproc configuration is required. It will not work with the
listener-based extproc.
The extproc agent is spawned directly by Oracle Database, and no configuration changes are required to either listener.ora or tnsnames.ora. If extproc is configured on the database listener, it overrides the default settings.
For R-3.3.0 on Linux 6, by default, extproc supports external procedure calls if the libraries used are in $ORACLE_HOME/bin or $ORACLE_HOME/lib.
To allow extproc to service any external procedure, set EXTPROC_DLLS to ANY or simply leave it blank (the default).
Enable extproc tracing by doing the following:
- To your
extproc.orafile, add the following statement:SET TRACE_LEVEL=ON - Restart the database.
Traces for all
extprocoperations are now recorded in the log files in the$ORACLE_HOME/hs/logdirectory.
For R-3.3.0 on Linux 6 it is necessary to set LD_LIBRARY_PATH in $ORACLE_HOME/hs/admin/extproc.ora to the location of the R-core-extra RPM so that these libraries are found by the Oracle process running extproc. For example, the default location of the R-core-extra RPM is /usr/lib64/R/port/Linux-X64/lib. The extproc.ora entry for that location should be:
SET LD_LIBRARY_PATH=/usr/lib64/R/port/Linux-X64/libIn Linux 7 and later, setting LD_LIBRARY_PATH is not necessary because the required versions of these libraries are native to newer systems.
Note:
A database reboot is needed for changes inextproc.ora to take effect.
See Also:
"Default Configuration for External Procedures" in Oracle Database Net Services Administrator's Guide for details
Parent topic: Using EXTPROC with Embedded R Execution