0

私はROracleを使用しており、R で次のコマンドを実行します。

Sys.getenv()
drv <- dbDriver("Oracle")

そして、この最後の行の後に得られるエラーは次のとおりです。

Error in .oci.Driver(.oci.drv(), interruptible = interruptible, unicode_as_utf8 = unicode_as_utf8,  :
  Error while trying to retrieve text for error ORA-01804

RHEL 5 サーバーで作業しているRStudioサーバーを使用しています。

このエラーを回避するにはどうすればよいですか?

4

2 に答える 2

2

次の 2 点を確認する必要があります。

  • ORACLE_HOME環境変数を定義する必要があります
  • $ORACLE_HOME/libパスはLD_LIBRARY_PATH環境変数値に含まれている必要があります

たとえば、(公式の Oracle Instant Client インストールでのデフォルト) の場合ORACLE_HOMEは、次の R コマンドを実行します。/usr/lib/oracle/12.1/client64.rpm

Sys.setenv("ORACLE_HOME" = "/usr/lib/oracle/12.1/client64")
Sys.getenv("LD_LIBRARY_PATH")
# Here check if /usr/lib/oracle/12.1/client64/lib is a part (separated by ":" of the result)
# else, append ":/usr/lib/oracle/12.1/client64/lib" to the result and set the environment variable using:
# Sys.setenv("LD_LIBRARY_PATH" = "/all/the/result:/of/getenv/command:/usr/lib/oracle/12.1/client64/lib")
于 2017-01-20T10:49:21.343 に答える