RedHat 7 安装 Oracle R Enterprise 1.5.1
安装的Oracle R Enterprise版本需与R的版本对应,具体查看下图
本教程基于Oracle 19.3.0,安装Oracle R Enterprise 1.5.1 和 R 3.3.0
本文不讲述如何安装Oracle服务,请自行查找教程完成安装

1.R-3.3.0
R-3.3.0 源码方式安装
源码下载
https://mirrors.tuna.tsinghua.edu.cn/CRAN/src/base/R-3/检查是否存在java
java -version编译R-3.3.0
[root@RedHat]# cd /home/oracle/
[root@RedHat]# tar zxvf R-3.3.0.tar.gz
[root@RedHat]# cd R-3.3.0
[root@RedHat]# yum install gcc
[root@RedHat]# yum install gcc-gfortran
[root@RedHat]# yum install gcc-c++
[root@RedHat]# yum install readline-devel
[root@RedHat]# yum install libXt-devel
[root@RedHat]# ./configure --prefix=/opt/R-3.3.0 --enable-R-shlib
[root@RedHat]# make
[root@RedHat]# make install
[root@RedHat]# chown -R oracle:oinstall /opt/R-3.3.0
若编译失败,则删除/home/oracle/R-3.3.0 和 /opt/R-3.3.0 目录重新操作
R-3.3.0 RPM方式安装
Oracle R Distribution 3.3.0 RPMs for Oracle Linux 7:
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/R-3.3.0-2.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/Rcore-3.3.0-2.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/R-coreextra-3.3.0-22.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/Rdevel-3.3.0-2.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/libRmath-3.3.0-2.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/libRmathdevel-3.3.0-2.el7.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL7/addons/x86_64/getPackage/libRmathstatic-3.3.0-2.el7.x86_64.rpm
Oracle R Distribution 3.3.0 RPMs for Oracle Linux 6:
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/R-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/Rcore-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/R-coreextra-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/Rdevel-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/libRmath-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/libRmathdevel-3.3.0-2.el6.x86_64.rpm
http://public-yum.oracle.com/repo/OracleLinux/OL6/addons/x86_64/getPackage/libRmathstatic-3.3.0-2.el6.x86_64.rpm
执行安装
rpm -Uvh *.rpm --prefix=/opt/R-3.3.0
2.Oracle R Enterprise Server
初始化环境变量
[root@RedHat]# vim /etc/profile.d/ore.sh
#!/bin/bash
export ORACLE_HOME=/u01/app/oracle/product/19.3.0
export ORACLE_SID=ORCL
export R_HOME=/opt/R-3.3.0
export R_LIBS_USER=$ORACLE_HOME/R/library
export PATH=$PATH:$R_HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:$RHOME_lib:$R_HOME/port/Linux-X64/lib
[root@RedHat]# source /etc/profile.d/ore.sh
环境变量调整后source生效,并重新链接ssh
RQSYS Schema
[oracle@RedHat]# sqlplus / as sysdba
SQL> select file_name,file_id,tablespace_name from dba_data_files; --查询现有数据库文件路径
SQL> create tablespace rqsys datafile '/u01/oradata/OORDB421/datafile/rqsys01.dbf' size 2000m;
SQL> exit
rqsys是Oracle数据库中Oracle R Enterprise的系统帐户。
它包含元数据、PL/SQL包和其他使用的可执行代码内部由Oracle R Enterprise Server提供。
Oracle R Enterprise Server安装过程将rqsys创建为锁定帐户,密码已过期。
rqsys用户没有CREATE SESSION 特权
开始安装R Enterprise Server
[oracle@RedHat]# unzip ore-server-platform-arch-1.5.1.zip
[oracle@RedHat]# ./server.sh
Oracle R Enterprise 1.5.1 Server.
Copyright (c) 2012, 2017 Oracle and/or its affiliates. All rights reserved.
Checking platform .................. Pass
Checking R ......................... Pass
Checking R libraries ............... Pass
Checking ORACLE_HOME ............... Pass
Checking ORACLE_SID ................ Pass
Checking sqlplus ................... Pass
Checking ORACLE instance ........... Pass
Checking CDB/PDB ................... Pass
Checking ORE ....................... Pass
Choosing RQSYS tablespaces
PERMANENT tablespace to use for RQSYS [list]: RQSYS
TEMPORARY tablespace to use for RQSYS [list]: TEMP
Choosing ORE user
ORE user to use [list]: RQSYS
Choosing RQSYS tablespaces
PERMANENT tablespace to use for RQSYS [list]: RQSYS
TEMPORARY tablespace to use for RQSYS [list]: TEMP
Choosing RQSYS password
Password to use for RQSYS:
Current configuration
R Version ........................ R version 3.3.0 (2019-07-05)
R_HOME ........................... /opt/R-3.3.0/lib64/R
R_LIBS_USER ...................... /u01/app/oracle/product/19.3.0/R/library
ORACLE_HOME ...................... /u01/app/oracle/product/19.3.0
ORACLE_SID ....................... ORCL
Existing R Version ............... R version 3.3.0 (2019-07-05)
Existing R_HOME .................. /opt/R-3.3.0/lib64/R
Existing ORE data ................ None
Existing ORE code ................ None
Existing ORE libraries ........... 1.5.1
RQSYS PERMANENT tablespace ....... RQSYS
RQSYS TEMPORARY tablespace ....... TEMP
ORE user type .................... New
ORE user name .................... RQSYS
ORE user PERMANENT tablespace .... RQSYS
ORE user TEMPORARY tablespace .... TEMP
Grant RQADMIN role ............... No
Operation ........................ Install/Upgrade/Setup
Proceed? [yes] yes
Removing R libraries ............... Pass
Installing R libraries ............. Pass
Configuring ORE .................... Pass
Removing ORE script ................ Pass
Creating ORE script ................ Pass
Installing supporting packages ..... Pass
Granting ORE privileges ............ Pass
Done
[oracle@RedHat]#
3.Oracle R Enterprise Client
安装ore-client
[oracle@RedHat]# unzip ore-client-platform-arch-1.5.1.zip
[oracle@RedHat]# cd /client
[oracle@RedHat]# R CMD INSTALL ORE_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREbase_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREcommon_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREdm_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREdplyr_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREeda_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREembed_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREgraphics_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREmodels_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREpredict_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL OREstats_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL ORExml_1.5.1_R_x86_64-unknown-linux-gnu.tar.gz
4.Oracle R Enterprise Supporting
安装R-supporting
[oracle@RedHat]# unzip ore-supporting-platform-arch-1.5.1.zip
[oracle@RedHat]# cd /supporting
[oracle@RedHat]# R CMD INSTALL DBI_0.6-1_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL png_0.1-7_R_x86_64-unknown-linux-gnu.tar.gz
[oracle@RedHat]# R CMD INSTALL ROracle_1.3-2_R_x86_64-unknown-linux-gnu.tar.gz
5.验证
连接R验证
[oracle@RedHat]# R
> library(ORE)
Loading required package: OREbase
Loading required package: OREcommon
Attaching package: ‘OREbase’
The following objects are masked from ‘package:base’:
cbind, data.frame, eval, interaction, order, paste, pmax, pmin,
rbind, table
Loading required package: OREembed
Loading required package: OREstats
Loading required package: OREgraphics
Attaching package: ‘OREgraphics’
The following object is masked from ‘package:grDevices’:
xy.coords
Loading required package: OREeda
Loading required package: OREmodels
Loading required package: OREdm
Loading required package: OREpredict
Loading required package: ORExml
> ore.connect("RQUSER", password="RQUSERpsw", conn_string="", all=TRUE)
> ore.is.connected()
TRUE
>
使用PLSQL创建R脚本
BEGIN
sys.rqscriptDROP('TEST_SCRIPT');
sys.rqscriptcreate('TEST_SCRIPT','function(x,param)
{
paramA <- as.numeric(as.matrix(x))
resultOfAll <- data.frame(paramB=paramA,stringsAsFactors=F)
resultOfAll
}');
END;
查询创建的脚本
SELECT * FROM sys.Rq$script;
详细安装步骤,可查看附件Oracle R Enterprise Installation.pdf