联奕科技工程体系

 找回密码
 立即注册
查看: 824|回复: 0

【Oracle】centos7.7+oralce12cR2静默安装脚本

[复制链接]

13

主题

22

帖子

7776

积分

论坛元老

想要更好地阅读本帖,请先注册账号!否则图片无法显示!

Rank: 8Rank: 8

积分
7776
发表于 2019-7-19 16:16:10 | 显示全部楼层 |阅读模式
本帖最后由 huangmingyong 于 2020-11-2 15:38 编辑

用户使用协议
  • 请先明白,一旦您下载了本脚本,将默认您已经完整阅读了本帖,您将为自己的行为负责。
  • 本脚本是给已经安装过Oracle12c的用户简化安装步骤所用,从未安装过Oracle12c的用户严禁使用本脚本安装。使用脚本安装生产库的时候请全方位考虑过Oracle12c万一安装出现问题,以自己的能力是否可以解决。
  • 脚本为个人兴趣所做,与部门、岗位职责等无关,无法分配工作内的时间去解决安装问题!
  • 请仔细阅读本帖,通读脚本,理解脚本中每行命令会带来的影响,再去执行本脚本。只要能在sqlplus用命令行连上oracle那就都不是安装的问题,非安装的问题谢绝私聊。
  • 一旦因为操作不当造成Oracle12c安装失败,禁止直接重新执行脚本!必须要重装系统之后才可以继续执行脚本!
  • 脚本仅供研究与学习,请勿过于依赖脚本。对使用脚本搭建 Oracle 导致的一切问题概不负责!

2020年7月16日更新:
1. BUG修复,适配最新的Centos7版本
外链下载:下载地址
论坛登录下载:


已知在虚拟机上部署的 centos 使用静默安装会出现安装成功但实例无法启动、监听器无法执行的问题,请在实体机上执行本安装脚本。

已在 centos7.7 1908 上测试过了脚本,目前仅支持 Oracle Database 12c Release 2 (12.2.0.1.0)
请不要在 Oracle Database 12c Release 1 或者其他版本的 Oracle 上使用!


请检查主机的 /tmp 下空间大于1G !请检查主机的 SWAP 分区大于1G !如果你使用独立硬盘挂载 /oracle 目录去安装,请保证独立硬盘的分区格式和主硬盘的分区格式完全一致!(主分区为ext4则oracle安装分区也要为ext4)

脚本默认最低配置:
  • CentOS 7.6.1810
  • 4G Ram
  • 4G SWAP
  • 40G Rom

脚本安装后的默认账号密码:
安装时会输出在控制台中,请注意查看。

安装前请使用Notepad++打开并修改 dbca.rsp

找到 initParams ,修改 pga 和 sga 的大小,以适合物理机内存, pga 与 sga 之和不要超过物理机内存的一半。在 OLTP (联机事务处理)系统中,典型 PGA 内存设置应该是总内存的较小部分(例如 20% ),剩下80%分配给 SGA 。
脚本内默认4G虚拟机情况下:pga_aggregate_target=270MB,sga_target=810MB
8G内存服务器推荐的设置(需要手动修改 dbca.rsp ):pga_aggregate_target=1310MB,sga_target=5242MB
16G或者以上内存的服务器需要修改两个地方(以 64G 内存的服务器为例):pga = RAM * 0.2 ≈ 10240MB , sga = RAM * 0.8 ≈ 40960MB
  • dbca.rsp (改为你想设置的 pga 和 sga 的值)
    1. pga_aggregate_target=10240MB,sga_target=40960MB
    复制代码

  • 脚本 install.sh (找到如下截图的位置)
  • 其中,SHMMAX、SHMMNI和SHMALL是需要重点修改的参数。
    3.1 SHMMAX= 配置了最大的内存segment的大小 ——>这个设置的比SGA_MAX_SIZE大比较好。SHMMAX参数:Linux进程可以分配的单独共享内存段的最大值。一般设置为内存总大小的一半。这个值的设置应该大于SGA_MAX_TARGET或MEMORY_MAX_TARGET的值,因此对于安装Oracle数据库的系统,shmmax的值应该比内存的二分之一大一些。
    3.2 SHMMNI= 整个系统的内存segment的总个数 。设置系统级最大共享内存段数量。Oracle10g推荐最小值为4096,可以适当比4096增加一些。
    3.3 SHMSEG= 每个进程可以使用的内存segment的最大个数,使用默认的就好
    3.4 SHMALL=是全部允许使用的共享内存大小,shmmax 是单个段允许使用的大小。这两个可以设置为内存的 80%。

    其中:kernel.shmall = kernel.shmmax / kernel.shmmni

    以 16G 内存的服务器为例,16*1024*1024*1024*80% = 13743895347,shmall 的大小为 13743895347/4k(getconf PAGESIZE可得到) = 3435973。
    1. kernel.shmmax = 13743895347
    2. kernel.shmall = 3435973
    3. kernel.shmmni = 4096
    复制代码


    以 64G 内存的服务器为例
    1. kernel.shmmax = 54975581388
    2. kernel.shmall = 13421772
    3. kernel.shmmni = 4096
    复制代码

    参考文章:https://blog.csdn.net/sunansheng/article/details/51889044
  • 目前没有这么大内存的服务器给我测试= =,所以不保证这些信息绝对正确。



Oracle 12c Release 2 下载
linuxx64_12201_database.zip (3,453,696,911 bytes) (cksum - 4170261901)

Oracle 12c Release 2 企业邮网盘下载
1076882592 1048576000 linuxx64_12201_database.7z.001
765008689 1048576000 linuxx64_12201_database.7z.002
1474100289 1048576000 linuxx64_12201_database.7z.003
483323919 249751851 linuxx64_12201_database.7z.004


此静默安装脚本可以在纯净最小化安装的centos7.6 1810上简易安装并运行一个oracle 12cR2实例,启动em(端口5500)并配置数据库开机自启。

使用方法:
1. 将压缩包拷到主目录并解压
  1. tar -xzvf oracle12cR2Install_ver0-1.tar.gz
复制代码


2. 将下载好的 linuxx64_12201_database.zip 移动到和 install.sh 同等级目录下
  1. mv linuxx64_12201_database.zip oracle12cR2Install_ver0-1
复制代码


3. 看到目录树如下所示
  1. $ tree -L 1
  2. .
  3. ├── arch
  4. ├── dbca.rsp
  5. ├── db.rsp
  6. ├── install.sh
  7. ├── linuxx64_12201_database.zip
  8. ├── ReadMe.md
  9. └── tree.png
  10. 1 directory, 6 files
复制代码


4. +x权限,sudo运行install.sh


5. 未安装完成前,请不要向控制台输入任何东西!
最新版脚本会自动检测安装进度,安装完成后会自动进入下一个步骤。


6. 安装完成后将如下图所示,脚本会自动退出。

可以浏览器直接打开Oracle的em去添加一个新用户,默认设置sys用户是只能本机连接的。
  1. https://192.168.3.21:5500/em
复制代码
如果连不上em,证明是之前主机名没命名好以及host没改好,可以在oracle用户身份下用 lsnrctl status 指令看监听器连接信息。


从上图可以看到端口,部分机器装好之后默认端口是1539不是1521,注意修改连接信息。






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
想要更好地阅读本帖,请先注册账号!
否则图片无法显示!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|ly-sky.com

GMT+8, 2025-12-17 23:38 , Processed in 0.088126 second(s), 21 queries .

快速回复 返回顶部 返回列表