Reputation: 595
I'm trying to use ROracle. My Oracle database version is Oracle Database 12c Release 12.1.0.1.0 - 64bit Production, and I have installed Instant Client and SDK for the version 12.1.0.2.0 (12.1.0.1.0 isn't available on Oracle's site).
I can access the Oracle database through Oracle SQL Developer without any issues. The error message I get in RStudio is:
Error in .oci.Driver(.oci.drv(), interruptible = interruptible, unicode_as_utf8 = unicode_as_utf8, :
In case it's useful, I have installed Instant Client and SDK here: C:\oreclient_install_dir\instantclient_12_1
I'm running a Windows machine and I followed the instructions on CRAN: http://cran.us.r-project.org/web/packages/ROracle/INSTALL Including adding the environment variables.
After some searching (e.g. here) it looks like I need to set LD_LIBRARY_PATH and ORACLE_HOME and "OCI_LIB", which I did:
Sys.setenv(LD_LIBRARY_PATH="C:/oreclient_install_dir/instantclient_12_1")
Sys.setenv("ORACLE_HOME" = "C:/oreclient_install_dir/instantclient_12_1")
Sys.setenv("OCI_LIB" = "C:/oreclient_install_dir/instantclient_12_1")
Same error comes up. I'm likely not doing this right, however; I'm not a DBA and don't know all the details.
Any help with this would be appreciated.
Upvotes: 1
Views: 1356
Reputation: 25225
LD_LIBRARY_PATH
is for Linux. Assuming that you already have Rtools installed in C:\Rtools, you can use the following code to install ROracle
Sys.setenv(OCI_LIB64="C:\\oreclient_install_dir\\instantclient_12_1")
Sys.setenv(PATH=paste0(Sys.getenv("PATH"),";C:\\oreclient_install_dir\\instantclient_12_1"))
install.packages("ROracle", type="source", INSTALL_opts="--no-multiarch")
For using the ROracle package, you can use the following:
Sys.setenv(OCI_LIB64="C:\\oreclient_install_dir\\instantclient_12_1")
Sys.setenv(PATH=paste0(Sys.getenv("PATH"),";C:\\oreclient_install_dir\\instantclient_12_1"))
library(ROracle)
Upvotes: 1