RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

时间:2024-04-02 13:41:59

1、准备工作

VirtualBox:https://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html

RHEL 7.6:http://www.redhat.com(在redhat官网顺便加入开发者:https://developers.redhat.com/,开发者可以获得RHEL的Developer订阅,这样就可以使用yum安装一些软件

Oracle 18C:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html,下载linux x86-64的的RPM文件oracle-database-ee-18c-1.0-1.x86_64.rpm,这是18C最大的变革,支持RPM了,用yum安装则会非常简单,不像12c,需要手动安装依赖软件包、创建用户与组、添加GUI支持。

2、建立rhel-7虚拟机,使用2048M内存,2个CPU,128M显存,显卡控制器使用VBoxVGA,不然安装时找不到鼠标,40G硬盘,网络设置的高级选项里,端口转发添加主机2222到子系统22、主机1521到子系统1521的规则。

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

3、安装RHEL 7.6,软件选择带GUI的服务器,只选KDE,图形界面才能方便在安装后同意许可与管理订阅信息。

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

创建主机名,开启网络,因为oracle不支持127.0.0.1,所以有必要设置主机名与IP地址,而DHCP分配的地址好像一直都是固定的,比如案列中的IP 10.0.2.15下文会加入到/etc/hosts中,还有路由也要记下来,它是主机虚拟IP。

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

创建一个用户,并放入管理员组里,这个用户用来登录ssh。

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验安装完毕,首次重启后需要接受许可证

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

并且注册系统,如果有**码则选择**码,点击下一步

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

没有**码,在下一步输入redhat开发者账号和密码,点击注册,系统会自动下载“Redhat Developer Subscription”,只管点击“附加”即可。

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验

4、打开xshell或者putty,用ssh连接上虚拟机

首先修改sudo的免密权限

$sudo vi /etc/sudoers

%wheel ALL=(ALL) ALL 之前加上#
#%wheel ALL=(ALL) NOPASSWD: ALL 之前的#号去掉
oracle ALL=(ALL) NOPASSWD: ALL 加在最后一行

强制保存退出(:wq!)

接着修改主机的IP地址

$sudo vi /etc/hosts

127.0.0.1   localhost ***
::1              localhost***
#新增一行,这个IP就是DHCP分配的IP地址,可以用ifconfig命令查看
10.0.2.15   redhat

保存退出

$sudo vi /etc/sysconfig/network

hostname=redhat
networking=yes

保存退出

使用hostname命令查看当前主机名,务必保持一致

5、如果OS不是Oracle Linux 7,则需添加oracle 18c的repos

$cd /etc/yum.repos.d
$sudo wget http://public-yum.oracle.com/public-yum-ol7.repo
$sudo wget http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol7 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle

然后直接安装oracle 18c的预安装包

$sudo yum install oracle-database-preinstall-18c

如果没有oracle linux 7的repos支持,需要手动安装

$sudo rpm -Uvh https://yum.oracle.com/repo/OracleLinux/OL7/latest/x86_64/getPackage/oracle-database-preinstall-18c-1.0-1.el7.x86_64.rpm

首次运行会提示缺少依赖包,按照所给提示用yum install安装依赖包,而libstdc++-33在RHEL7的默认yum里没有,需要添加repos支持

$sudo yum-config-manager --enable rhel-7-server-optional-rpms

这样libstdc++-33就能安装了

而fedora-29系统里,没有compat-libcap1,需要引用centos的

$sudo rpm -Uvh http://mirror.centos.org/centos/7/os/x86_64/Packages/compat-libcap1-1.10-7.el7.x86_64.rpm

同时fedora需要重新连接libnsl

$sudo rm -f /usr/lib64/libnsl.so.1
$sudo rm -f /usr/lib/libnsl.so.1
$sudo ln -s /usr/lib64/libnsl.so.2.0.0 /usr/lib64/libnsl.so.1
$sudo ln -s /usr/lib/libnsl.so.2.0.0 /usr/lib/libnsl.so.1

然后再次运行rpm命令安装oracle preinstall,

接着

$cat /etc/group

可以发现oracle用户及相关组已经自动创建了。

6、将下载的oracle 18c rpm传给虚拟机,方法有很多,比如共享文件夹,而我用的方法比较老土,我把rpm保存在主机的网站根目录下,然后在虚拟里用wget获取

$cd /tmp

$wget http://10.0.2.2/oracle-database-ee-18c-1.0-1.x86_64.rpm

$sudo yum -y localinstall oracle-database-ee-18c-1.0-1.x86_64.rpm

fedora 29用yum或dnf安装不上oracle 18c,它有个no digest错误,只有用rpm安装

$sudo rpm -ivh --nodigest oracle-database-ee-18c-1.0-1.x86_64.rpm

安装完毕后,根据提示初始化数据库

$sudo /etc/init.d/oracledb_ORCLCDB-18c configure

这个过程会很漫长,漫长到喝完一壶茶,打完《影之刃》两个角色的所有任务之后,它还没有完成。

7、安装后的配置

$sudo vi /etc/oratab

ORCLCDB:/opt/oracle/product/18c/dbhome_1:N

把最后一个字符N改成Y

$sudo chkconfig oracledb_ORCLCDB-18c on

这是设置oracle开机启动,该脚本即/etc/init.d/oracledb_ORCLCDB-18c

$sudo passwd oracle

这是设置oracle的密码

$sudo vi /etc/profile

在文件末尾添加

export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/18c/dbhome_1
export ORACLE_SID=ORCLCDB
export ORACLE_OWNER=oracle
export PATH=$PATH:$ORACLE_HOME/bin
 

重新开机,输入

$ps -ef | grep ora | grep -v grep

发现N多的ora_xxxx_ORCLCDB,表示oracle已经自动启动啦。

$su - oracle

$sqlplus / as sysdba

RedHat系列(CentOS 7/Fedora 29/RHEL 7/Oracle Linux 7)安装Oracle 18C体验