实战:如何在LINUX8.0上安装Oracle 11.2.0.4(文内有快速配置安装脚本)

2024年 4月 26日 73.9k 0

作者 | 徐sir

来源 |公众号 徐sir的IT之路

如需转载请私信联系我,除了墨天轮、CSDN、PGFANS和微信公众号以外都不是我的号

如果觉得我写的对你有帮助,麻烦动动小手,点下:转发、关注、在看,帮我多增加点人气

写这个测试的主要原因是前一阵群里大佬们一直在讨论如何在REDHAT8.0上安装ORACLE 11G,我还好奇了,现在一般不是都用7.9来跑11G么

沟通一下才了解redhat 7快要停保了,正规的企业为了避免以后的问题,都考虑迁移到新版本的系统上。

关于红帽7的生命周期,又查询了一下,发现还能挺几年,但是这个额外的维保得花钱购买。

我这目前所处的客户环境还比较落后,大部分都切到国产化了,都是一些小应用,那咱也得学啊!
于的查阅了相关的官方文档、BLOG确认11G确实是支持在linux8.0上运行。
汇总了这么一篇,写的有问题欢迎大家一起指正。

1、关于操作系统认证版本

目前在MOS上查证,oracle database 11.2.0.4己经通过oracle linux8的认证

同样11GR2的官方文档也进行了相应的更新,增了关于OEL8以及RHEL8的说明,支持11.2.0.4数据库,但是8.2以后的系统不支持11.2.0.4的GI,如果想要实现高可用,需要安装19C的GI

2、硬件要求

内存要求是最小1G,建议2G或以上
SWAP要求如下配置

        RAM

      Swap Space

Between 1 GB and 2 GB

1.5 times the size of the RAM

Between 2 GB and 16 GB

Equal to the size of the RAM

More than 16 GB

16 GB

关于存储空间遵从11GR2官方手册的要求
至少要有1G以上的/tmp空间
至少4.4G的空间用来安装database软件
至少1.7G的空间还创建数据库
文件系统可以是EXT2/EXT3/EXT4/XFS等(see Note:236826.1 for further information)

3、关于Linux8.0安装Oracle的内核支持

Kernel requirements
The following kernels are supported:
Oracle Linux 8.2 with the Unbreakable Enterprise Kernel 6: 5.4.17-2136.302.7.2.1.el8_5.x86_64 or later    
Oracle Linux 8.2 with the Red Hat Compatible Kernel: 4.18.0-348.12.2.el8_5.x86_64 or later    
Red Hat Enterprise Linux 8.2: 4.18.0-348.12.2.el8_5.x86_64 or later
Runlevel : 3 or 5

4、安装oracle

4.1、LINUX系统安装

我这里使用了oracle linux 8.9
系统安装的时候,选择最小安装,勾选了一些常用的工具和开发包。

安装完,查看当前系统版本

[root@oracle ~]# uname -a
Linux oracle 5.15.0-200.131.27.el8uek.x86_64 #2 SMP Wed Oct 4 22:19:10 PDT 2023 x86_64 x86_64 x86_64 GNU/Linux
[root@oracle ~]# cat etc/oracle-release
Oracle Linux Server release 8.9

4.2、配置主机名

hostnamectl set-hostname oracle
echo "192.168.56.200 oracle" >>/etc/hosts

4.3、创建用户、参数配置

#create user
/usr/sbin/groupadd oinstall
/usr/sbin/groupadd dba
/usr/sbin/groupadd oper
/usr/sbin/useradd -g oinstall -G dba,oper oracle
echo "oracle" | passwd --stdin oracle

#change system parameter
cp etc/sysctl.conf etc/sysctl.conf.bak
echo "#oracle" >> /etc/sysctl.conf
echo "kernel.shmmni = 4096" >> /etc/sysctl.conf
echo "fs.aio-max-nr = 1048576" >> /etc/sysctl.conf
echo "fs.file-max = 6815744" >> /etc/sysctl.conf
echo "kernel.sem = 250 32000 100 128" >> /etc/sysctl.conf
echo "net.ipv4.ip_local_port_range = 9000 65500" >> /etc/sysctl.conf
echo "net.core.rmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.rmem_max = 4194304" >> /etc/sysctl.conf
echo "net.core.wmem_default = 262144" >> /etc/sysctl.conf
echo "net.core.wmem_max = 1048586" >> /etc/sysctl.conf
echo "vm.swappiness = 10" >> /etc/sysctl.conf
echo "kernel.shmmax= $(free|grep Mem |awk '{print int($2*1024*0.85)}')" >> /etc/sysctl.conf
echo "kernel.shmall = $(free|grep Mem |awk '{print int(($2*1024*0.85)/4096)}')" >> /etc/sysctl.conf
echo "vm.nr_hugepages = $(free -m|grep Mem |awk '{print int(($2*0.8*0.8)/2)}')" >> /etc/sysctl.conf
free -m
sysctl -p
echo "#oracle" >> /etc/security/limits.conf
echo "oracle soft nproc 2047" >> /etc/security/limits.conf
echo "oracle hard nproc 16384" >> /etc/security/limits.conf
echo "oracle soft nofile 1024" >> /etc/security/limits.conf
echo "oracle hard nofile 65536" >> /etc/security/limits.conf
echo "* soft memlock $(free |grep Mem|awk '{print int($2*0.90*1024)}')" >> /etc/security/limits.conf
echo "* hard memlock $(free |grep Mem|awk '{print int($2*0.90*1024)}')" >> /etc/security/limits.conf
#add oracle profile
cat >> /etc/profile

相关文章

Oracle如何使用授予和撤销权限的语法和示例
Awesome Project: 探索 MatrixOrigin 云原生分布式数据库
下载丨66页PDF,云和恩墨技术通讯(2024年7月刊)
社区版oceanbase安装
Oracle 导出CSV工具-sqluldr2
ETL数据集成丨快速将MySQL数据迁移至Doris数据库

发布评论