无外网安装oracle,主要的问题,其实是准备好各种oracle依赖的rpm包,自己在虚拟机上实验了一把,成功安装好了oracle。没有使用yum install等需要外网的命令,在安装相关依赖rpm包时,推荐一个网站https://centos.pkgs.org/
这个网站会把rpm包的依赖展现出来,依次一个一个手动下载好。

到时候去机房无网络安装oracle的情况下,我们就可以使用U盘把提前下载好的rpm包mount上去。

有的centos可能没有unzip命令,所以第一步解压oracle11g的两个包都解压不了,这就尴尬了。所以要准备一个unzip的rpm包。

在静默安装oracle11g的时候,有可能会报swap空间不足问题,需要手动建一个swap,并格式化激活,同时在/etc/fstab增加一条相应记录。
漫长的静默安装好后,启动netca的时候,我遇到过如下问题

****DISPLAY environment variable not set!
    Oracle Net Configuration Assistant is a GUI tool
    which requires that DISPLAY specify a location
    where GUI tools can display.
    Set and export DISPLAY, then re-run.

这个需要使用oracle用户设置一个DISPLAY环境变量

export DISPLAY=localhost:1.0

还遇到过确实libXext包问题
无外网情况下安装oracle_oracle

root@localhost ~]# rpm -ivh libXext-1.3.3-3.el7.x86_64.rpm 
错误:依赖检测失败:
	libX11 >= 1.5.99.902 被 libXext-1.3.3-3.el7.x86_64 需要
	libX11.so.6()(64bit) 被 libXext-1.3.3-3.el7.x86_64 需要
还需要安装libX11

还需要libX11,又去网上下载一个libX11

[root@localhost ~]# rpm -ivh libX11-1.6.7-2.el7.x86_64.rpm 
错误:依赖检测失败:
	libX11-common >= 1.6.7-2.el7 被 libX11-1.6.7-2.el7.x86_64 需要
	libxcb.so.1()(64bit) 被 libX11-1.6.7-2.el7.x86_64 需要

又去网上下载libX11-common和libxcb

[root@localhost ~]# rpm -ivh libX11-common-1.6.7-2.el7.noarch.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:libX11-common-1.6.7-2.el7        ################################# [100%]


[root@localhost ~]# rpm -ivh libxcb-1.13-1.el7.x86_64.rpm 
错误:依赖检测失败:
	libXau.so.6()(64bit) 被 libxcb-1.13-1.el7.x86_64 需要

又去网上下载libXau
最终把libXext包安装好,历尽艰辛万苦,终于迎来了胜利的曙光。

[root@localhost ~]# rpm -ivh libXau-1.0.8-2.1.el7.x86_64.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:libXau-1.0.8-2.1.el7             ################################# [100%]


[root@localhost ~]# rpm -ivh libxcb-1.13-1.el7.x86_64.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:libxcb-1.13-1.el7                ################################# [100%]


[root@localhost ~]# rpm -ivh libX11-1.6.7-2.el7.x86_64.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:libX11-1.6.7-2.el7               ################################# [100%]

[root@localhost ~]# rpm -ivh libXext-1.3.3-3.el7.x86_64.rpm 
准备中...                          ################################# [100%]
正在升级/安装...
   1:libXext-1.3.3-3.el7              ################################# [100%]

安装好libXext后,启动netca还是报如下错:
无外网情况下安装oracle_oracle_02

这个是因为默认的主机名导致的,修改两个文件

[root@localhost ~]# cat /etc/sysconfig/network
# Created by anaconda
NETWORKING=yes
HOSTNAME=test11g
GATEWAY=192.168.8.124


[root@localhost ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 test11g
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6


对应好hostname,在这里我增加了一个test11g

执行如下命令:

hostname test11g

让oracle用户退出重新登录就可以正常启动netca了

然后是修改listener.ora,增加如下

SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (GLOBAL_DBNAME = orcl) (SID_NAME = orcl) ))

然后是启动数据库,启动监听,建表空间,建用户,一切OK。

提醒:在准备rpm包的时候,还是需要多准备多个,针对centos6和centos7等,拿着牛逼的U盘,在Centos6和Centos7都能在无网络情况下安装。
无外网情况下安装oracle_oracle_03
无外网情况下安装oracle_oracle_04
无外网情况下安装oracle_oracle_05