文章目录

  • 一、安装前言
    • 1.闲聊
    • 2.提前知道的事
  • 二、安装准备
    • 1.Linux发行版本:ret hat7.4(更换yum源[传送门](https://blog.csdn.net/qq_42956179/article/details/109618774))
    • 2.Oracle安装版本(环境搭配好都一样安装):Oracle11gR2
    • 三、建立oracle用户
      • 1.root或sudo下新增用户组
    • 2.新建用户
    • 3.新建oracle用户目录
    • 4.增加sudoers用户
    • 错误提醒
  • 三、安装包配置
    • 1.切换用户、上传文件
    • 2.解压文件
    • 3.安装之前下载依赖包
  • 四、环境配置
    • 1.关闭防火墙
    • 2.配置hosts
    • 3.配置环境变量
    • 4.其它
  • 五、开始安装
    • 1.java版本查看
    • 2.启动安装
    • 3.安装
      • (1)错误提示
      • (2)解决内核参数
      • (3)解决安装包问题
  • 总结

一、安装前言

1.闲聊

因为公司需要将数据库服务器切换成linux版本的,所以需要在linux系统下安装oracle。
以下安装过程为自己亲自安装的,走了很多弯路,网上其他博客也是五花八门,不适合我实际情况下的安装,现在记录一下,希望对于读者能有帮助并且能够交流。

2.提前知道的事

在安装oracle之前,必须要明白,直接把Ubuntu、ret hat、centos、SUSE、OracleLinux叫做linux是不正确的,他们只是linux的发行版本。更确切地说,应该叫作“以Linux为核心的操作系统软件包。其中OracleLinux是甲骨文公司推行出来专门用于安装oracle的,但是实际上和ret hat、centos差不太多。

所以在选择安装oracle之前,首先要选好linux的发行版本。本人在Ubuntu版本下进行安装oracle失败在Net configuer上,并且在于各种rpm安装包。

oracle安装时需要各种rpm安装包,而且版本多为x86_64、i386,这是Ubuntu版本所不支持的,这是我的实验结果,如果有哪位大佬在Ubuntu系统上成功安装oracle了,请一定教教我
,拜谢!

除此之外,oracle18以及之后,甲骨文公司推出了在Linux上快速安装oracle的版本(oracle下载地址),rpm版本:


但是如果想真正的进行全自动安装,还缺少一个安装包oracle-database-preinstall-18c,这个安装包得要用外网才能下载,否则实际上和安装oracle11、12都差不多。

|版本声明:山河君,未经博主允许,禁止转载

二、安装准备

1.Linux发行版本:ret hat7.4(更换yum源传送门)

2.Oracle安装版本(环境搭配好都一样安装):Oracle11gR2

oracle11gR2官网下载地址:下载地址

三、建立oracle用户

我就按照自己的习惯来了,可能跟别的博客先后不一样,而且会多一些配置。

1.root或sudo下新增用户组

groupadd oinstall
groupadd dba

2.新建用户

useradd -g oinstall -G dba oracle

为新用户设置密码

passwd oracle

密码随便你输入

[root@oraclehost database]# passwd oracle
更改用户 oracle 的密码 。
新的 密码:
无效的密码: 密码是一个回文
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

3.新建oracle用户目录

我选择在home目录下创建

mkdir /home/oracle

切记要将该文件夹权限赋给oracle用户

chown -R oracle /home/oracle
chmod -R 775 /home/oracle

这时我们看一下文件夹权限

[oracle@oraclehost home]$ ll
总用量 8
drwx------. 16 aaron  aaron    4096 7月   6 16:16 aaron
drwxrwxr-x. 18 oracle oinstall 4096 7月   6 14:06 oracle

4.增加sudoers用户

其他人都没有提及这布操作,其实在我看来,这步操作是很重要的,可以免了很多麻烦!就不用还要su oracle了。

打开文件sudoers

sudo vi /etc/sudoers

找到

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL

添加

oracle ALL=(ALL) ALL

## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
aaron   ALL=(ALL)       ALL
oracle  ALL=(ALL)       ALL

这样我们在切换用户,或者重启动电脑会有oracle用户,否则oracle用户不能进行sudo命令。

查看是否建立好

id oracle

显示如下

[oracle@oraclehost ~]$ id oracle
uid=1001(oracle) gid=1001(oinstall) 组=1001(oinstall),1002(dba)

错误提醒

新建用户之后,登陆到oracle用户可能会有这种显示,不显示用户名,只显示bash-4.1~

在linux新建用户的时候,应该会自动将root用户下的环境文件给复制到新用户环境下的,但是不知道为什么我会遇到这个问题,这个时候复制一下文件就可以了。

ls -a /etc/skel/

[oracle@oraclehost ~]$ ls -a /etc/skel/
.   .bash_logout   .bashrc  .mozilla
..  .bash_profile  .kshrc

将这些文件复制到用户空间下就好了。

三、安装包配置

1.切换用户、上传文件

切换到oacle用户或者使用su oracle,将下载好的文件放入oracle用户环境中,我是放在:

/home/oracle/soft/oracle/

下的,这个时候就体现切换好oracle用户的好处,如果是在自己环境下直接进行复制的话,文件的用户以及用户组是不对的,先到文件目录下,用ll命令查看一下:

ll

显示:

[oracle@oraclehost oracle]$ ll
总用量 2295592
-rw-------. 1 oracle root     1239269270 7月   6 10:10 linux.x64_11gR2_database_1of2.zip
-rw-------. 1 oracle root     1111416131 7月   6 10:10 linux.x64_11gR2_database_2of2.zip

这样显示是对的,或者是

[oracle@oraclehost oracle]$ ll
总用量 2295592
-rw-------. 1 oracle oinstall     1239269270 7月   6 10:10 linux.x64_11gR2_database_1of2.zip
-rw-------. 1 oracle oinstall     1111416131 7月   6 10:10 linux.x64_11gR2_database_2of2.zip

如果是这样就是错的,aaron是我之前的用户名:

[oracle@oraclehost oracle]$ ll
总用量 2295592
-rw-------. 1 aaron aaron     1239269270 7月   6 10:10 linux.x64_11gR2_database_1of2.zip
-rw-------. 1 aaron aaron     1111416131 7月   6 10:10 linux.x64_11gR2_database_2of2.zip

因为过会我们解压后会导致解压出来的安装包用户是我之前的用户,这样安装到最后会导致使用空间的不正确,如果实在是不知道用户怎么切换,可以使用下面命令将文件所属进行切换:

chown -R oracle /home/oracle/soft/oracle

这个命令在上面使用过,不用多说拉。

2.解压文件

unzip ./linux.x64_11gR2_database_1of2.zip
unzip ./linux.x64_11gR2_database_2of2.zip

解压后会出现database文件夹,这个时候再确认一下安装文件的所属:

ll

显示如下就对了:

[oracle@oraclehost oracle]$ ll
总用量 2295592
drwxr-xr-x. 8 oracle oinstall        128 8月  21 2009 database
-rw-------. 1 oracle root     1239269270 7月   6 10:10 linux.x64_11gR2_database_1of2.zip
-rw-------. 1 oracle root     1111416131 7月   6 10:10 linux.x64_11gR2_database_2of2.zip

3.安装之前下载依赖包

这个直接下载就好

yum install binutils compat-libstdc+±33 elfutils-libelf elfutils-libelf-devel gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc+±devel make sysstat unixODBC unixODBC-de -y

四、环境配置

1.关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

这两行命令前者是关闭防火墙,但是关机后重启还是会启动
后者是禁用防火墙,但是我自己使用,重启动后还是会防火墙开启,这点一定要注意!
禁用防火墙原因:如果不禁用,在安装过程中,会在最后配置database config时卡住。

2.配置hosts

echo “192.168.3.71 oraclehost” >> /etc/hosts

ip地址和ip名,这个看你自己怎么配置。

3.配置环境变量

打开文件.bash_profile

vi ~/.bash_profile

输入

export ORACLE_BASH=/home/oracle/app/oracle
export ORACLE_HOME=/home/oracle/app/oracle/11.2.0/db_1
export ORACLE_UNQNAME=szxndb
export ORACLE_SID=szxndb
export PATH=$PATH:/home/oracle/app/oracle/11.2.0/db_1/bin

ORACLE_UNQNAME和ORACLE_SID可以不用默认的orcl,这个是用于安装oracle后,建立空间用的,我就用我公司的名字代替的。
其他什么语言类,例如export LANG=en_US,NLS_LAN=AMER…等其实是不用配置的。

保存退出,使其生效

source ~/.bash_profile

查看配置后对不对

env | grep ORACLE

显示如下就对了,记得在~目录下进行命令阿

[oracle@oraclehost ~]$ env | grep ORACLE
ORACLE_UNQNAME=szxndb
ORACLE_SID=szxndb
ORACLE_BASH=/home/oracle/app/oracle
ORACLE_HOME=/home/oracle/app/oracle/11.2.0/db_1

4.其它

有些博客说的很多配置都不需要再做的,只是做个提醒,如果自己修改的话可能会影响后期其他软件的使用,如果有兴趣可以自己查查参数的意思。
(1)有一些配置现在并不需要再做了,如果有兴趣可以自己查一查各个参数的意义。

[root@oraclehost]# vi /etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

这步布棸实际安装oracle的最低标准是肯定能达得到,只要你自己没有动过这些参数,可以自己先查看一下这些参数的大小。最低的stack内存、文件数量是一定能够达到大小,达到我们所需要的配置。

(2)修改登陆配置文件,编辑(不需要做)

vim /etc/pam.d/login

在该文件的最下面的行下添加

  • session required /lib/security/pam_limits.so
  • session required pam_limits.so

这边做个提醒,在该文件下本身就是有这两句话。

(3)设置内核参数,为了保障安装检查能通过(这个步骤现在不需要做,oracle在安装时,会帮我们做)

vim /etc/sysctl.conf

添加以下信息:

kernel.shmall = 4194304kernel.shmmax = 4147483648kernel.shmmni = 4096kernel.sem = 250 32000 100 128fs.file-max = 6815744net.ipv4.ip_local_port_range = 9000 65500net.core.rmem_default = 1048576net.core.rmem_max = 4194304net.core.wmem_default = 262144net.core.wmem_max = 1048576

五、开始安装

1.java版本查看

如果想使用图形话界面安装,必须要使用java包,否则会导致图形话界面安装中间的中文乱码,或者中间弹窗显示不出来,只有一条杠。
java在安装ret hat时是默认安装好的,我们只要查看一下版本就好。

java -version

显示:

[oracle@oraclehost ~]$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

版本为1.8.0

2.启动安装

进入database目录,执行(记住不要使用root权限)

./runInstaller -jreLoc /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre

显示:

[oracle@oraclehost database]$ ./runInstaller -jreLoc /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64/jre
正在启动 Oracle Universal Installer...检查临时空间: 必须大于 120 MB。   实际为 45945 MB    通过
检查交换空间: 必须大于 150 MB。   实际为 7931 MB    通过
检查监视器: 监视器配置至少必须显示 256 种颜色。    实际为 16777216    通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2020-07-06_06-07-37PM. 请稍候...[oracle@oraclehost database]$ 

3.安装

1.不选择接收安全更新、下一步


选择是

2.选择下一步

3.选择服务器类,下一步

4.下一步


5.选择高级安装,下一步


6.设置语言,下一步


7.根据需要选择,下一步


8.下一步


9.下一步


10.根据自己设置ORACLE_SSID设置,我是已经设置过了,所以会报红,下一步

11.选择字符集


12.根据自己需要选择字符集,我是直接unicode,下一步

13.下一步


14.下一步


15.设置管理员密码,我是图省事,直接一个密码

16.下一步

17,oracle会检查先觉条件

这里就要开始注意了

(1)错误提示

显示/tmp文件内存不正确(该错误因为我修改过,所以没有贴图)
这个时候有两种情况,1.swap交换区不够,2.oracle本身并没有检测出来。
前者就要自己设置swap交换区
后者自己查看一下/tmp内存够不够

df -l /tmp

显示:/tmp是挂在/dev/mapper/rhel-root

[root@oraclehost database]# df -l /tmp
文件系统                 1K-块    已用     可用 已用% 挂载点
/dev/mapper/rhel-root 52403200 5354740 47048460   11% /

df -h

显示:/dev/mapper/rhel-root的容量是50G,肯定是够用的,则可以忽略这个问题

[root@oraclehost database]# df -h
文件系统               容量  已用  可用 已用% 挂载点
/dev/mapper/rhel-root   50G  5.2G   45G   11% /
devtmpfs               3.8G     0  3.8G    0% /dev
tmpfs                  3.8G  1.9G  2.0G   49% /dev/shm
tmpfs                  3.8G  9.1M  3.8G    1% /run
tmpfs                  3.8G     0  3.8G    0% /sys/fs/cgroup
/dev/sda2             1014M  172M  843M   17% /boot
/dev/sda1              200M  9.8M  191M    5% /boot/efi
/dev/mapper/rhel-home  873G   14G  859G    2% /home
tmpfs                  772M   48K  772M    1% /run/user/1001
tmpfs                  772M   24K  772M    1% /run/user/1000

(2)解决内核参数

点击修补并再次检查按钮

执行/tmp/CVU_11.2.0_oracle/runfixup.sh脚本。

但是很多情况下,再次检查发现还是报以上内核参数错误,这是因为oracle本身check机制有bug,检测不出来的原因。
这个时候就需要自己进行查看/etc/sysctl.conf,参照步骤四,第4条其它,第三点,如果配置和oracle需要配置不一样,进行手工配置

kernel.shmmax = 536870912
kernel.shmall = 2097152
kernel.sem = 250 32000  100 128
fs.file-max = 6815744
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576

如果一样则不需要配置,进行忽略就可。
如果需要配置,配置完后执行

sysctl -p

(3)解决安装包问题

其实还是由于oracle自己check不出来,按照它的配置要求,只要版本在其之上就可以了,这个时候需要我们查看一下是否存在该安装包,不存在则安装,如果前面安装包步骤没有出错,这个时候应该都安装上了。
查看安装包是否存在:

rpm -qa | grep libaio

显示:

[root@oraclehost database]# rpm -qa | grep libaio
libaio-devel-0.3.109-13.el7.x86_64
libaio-0.3.109-13.el7.x86_64

显示中版本为x86_64,但是所需的可能是i386或者i68的,这个并不影响,i386是指x86。
然后我们发现没有安装pcksh包,这个已经被弃用了,我们之前安装了一个ksh包代替了

18.勾选全部忽略,下一步安装

19.点击安装,到%68可能就会出错


首先检查glibc包是否装好,安装好则修改/u01/app/oracle/product/11.2.0/dbhome_1/ctx/lib/ins_ctx.mk,将

ctxhx: $(CTXHXOBJ)$(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK)

修改为

ctxhx: $(CTXHXOBJ)-static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a

点击Retry继续安装。接着又提示”Error in invoking target ‘agent nmhs’ of makefile ‘/home/oracle/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk.’

解决方法:在makefile中添加链接libnnz11库的参数
修改/u01/app/oracle/product/11.2.0/dbhome_1/sysman/lib/ins_emagent.mk,将

$(MK_EMAGENT_NMECTL)

修改为

$(MK_EMAGENT_NMECTL) -lnnz11

继续安装。

20.执行root脚本(用别人的图拉,就一张)


如果卡在database config设置那里,可能是防火墙没关

这样就OK拉!

总结

真是不容易,如果对您有所帮助,请帮忙点个赞!

Linux下安装ORACLE(一周成果、全是干货!)相关推荐

  1. Linux下安装Oracle 12cR2

    Linux下安装Oracle 12cR2 Oracle 12C简介 安装前准备 开始安装 12c 下 pdb 切换及用户创建 Oracle 12C简介 Oracle 12C引入了CDB与PDB的新特性 ...

  2. Linux下安装Oracle参数自动初始化脚本

    在linux下安装Oracle通常是一件很头疼的事情, 而如果我们只是为了部署CMS的话,也没有必要对Oracle的参数去做详细的了解. 那么有没有办法简化这个安装过程呢? 下面给出了一个在Linux ...

  3. Linux下安装Oracle遇到的错误

    在linux下安装Oracle数据库时 (1)在实际操作中运行sqlplus出现了错误,大致如下: sqlplus / as sysdba sqlplus: error while loading s ...

  4. xhost: unable to open display linux下安装oracle

    情况1. 以root用户登录 输入命令xdpyinfo,记录下里面的name of display:后的字符串,如 name of display:127.0.0.1:1.0 在执行xhost +命令 ...

  5. 解决在Linux下安装Oracle时的中文乱码问题

    解决在Linux下安装Oracle时的中文乱码问题 参考文章: (1)解决在Linux下安装Oracle时的中文乱码问题 (2)https://www.cnblogs.com/qiumingcheng ...

  6. Linux下安装Oracle

    Linux下安装oracle.使用图形化界面121 <1>前期准备: 一.修改操作系统核心参数 在Root用户下执行以下步骤: 1)修改用户的SHELL的限制,修改/etc/securit ...

  7. VMware Linux 下安装 Oracle 11gR2 RAC

     文本: 文本 VMware Linnux 下安装 Oracle 11g R2 RAC 虚拟机VMware下安装Linux下载wmware server 2.0http://download.pcho ...

  8. linux下安装oracle集群,【Oracle 集群】Linux下Oracle RAC集群搭建之Oracle DataBase安装(八)...

    目录 数据库安装 继oracle集群安装之后,接下来也是最重要的数据库安装,整个数据库安装难度不大,用户以oracle用户身份登录RAC1主节点,对解压后的文件安装.主节点下安装后,其他所有结点自动安 ...

  9. linux下安装oracle 11g R2

    Linux环境配置 [c-sharp] view plaincopy OS:Fedora 15 DB:Oracle 11gR2 将Oracle安装到home/oracle_11目录 配置过程:本文来自 ...

最新文章

  1. Delphi 常用API 函数(好多都没见过)
  2. Log4J xml配置
  3. 从本地上传到hdfs上出现异常
  4. python中data.find_all爬取网站为空列表_Python网络爬虫之Scrapy 框架-分布式【第二十九节】...
  5. mysql打平子表_solr初步学习
  6. autowired的对象为null_spring-为什么我的@Autowired对象为null?
  7. 微信小程序的零食商城
  8. Ubuntu下安装Python3(与旧Python2版本共存)
  9. python之路 day5
  10. 图卷积网络详细介绍(三)
  11. 合肥师范学院计算机操作系统期末考试题,2005级操作系统期末试卷A卷及答案
  12. 苹果手机制作铃声 (简易版)
  13. [渝粤教育] 宁波城市职业技术学院 插花艺术 参考 资料
  14. 计算机应用基础系统总线,2019年自学考试计算机应用基础试题(4)
  15. 一网打尽!所有PMP的计算公式都在这里啦,赶紧学起来,建议收藏
  16. 存储虚拟化的特性和优势
  17. Tracup|利用项目管理工具,为您的团队设立长期OR短期目标
  18. bpm java_bpm完全解读
  19. 该微信用户未开启“公众号安全助手”的消息接收功能,请先开启后再绑定 解决方法
  20. Java毕业课设项目名称

热门文章

  1. 计算机丢失系统文件如何找回,电脑系统文件丢失怎么办
  2. ssh免密报错:Could not resolve hostname : Name or service not known
  3. 转载精品:工作8年的普通专科生程序员的一些感悟
  4. 一帘心事碎碎念,一眸雪舞剪剪风
  5. 第一讲:计算机基本结构
  6. 武汉新时标文化传媒有限公司短视频创作者实现突围?
  7. vba 批量生成条形图代码
  8. 4_kicad 5.0_spice仿真器(AC,直流切换,失真,噪声,操作点,临界点,灵敏度,传递函数,瞬态,自定义)...
  9. 百度地图Polyline画直线
  10. 程序设计入门——C语言 翁恺 第一次单元测试