在Centos7中使用一键脚本安装Oracle11g

1. 环境准备

1.1 系统版本:Centos7.9(2009)

1.2 Oracle版本:Oracle 11g 11.2.0.4

1.3 网络需求:可以连接互联网

1.4 一键安装:

curl -o oracle_install.sh https://files-cdn.cnblogs.com/files/blogs/827077/oracle_install.sh?t=1722301473 && chmod +x oracle_install.sh && ./oracle_install.sh

PS:此脚本主要为了实现公司内部标准化安装,提升效率,所以很多参数比如SID、密码等都素固定的。(就是我懒得)

2. 脚本执行过程

2.1 将安装包上传至任意目录

    p13390677_112040_Linux-x86-64_1of7.zip 1.3 GB (1395582860 字节)
MD5 1616F61789891A56EAFD40DE79F58F28
SHA-1 983461D6442B0833630475EC4885278588585651 p13390677_112040_Linux-x86-64_2of7.zip 1.1 GB (1151304589 字节)
MD5 67BA1E68A4F581B305885114768443D3
SHA-1 2E628D8CAC5D1C6FFF15E728B1F227747BF2DED8

2.2 确保软件源可用,并有EPEL源

这是默认的源,可以看到有三个,分别是Base、Extras、Updates。但是由于官方源已经停止维护,repolist为0,即无软件包可用,所以需要更换软件源。

[root@localhost ~]# yum repolist
已加载插件:fastestmirror
Determining fastest mirrors
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was
14: curl#6 - "Could not resolve host: mirrorlist.centos.org; 未知的错误"
Loading mirror speeds from cached hostfile
Loading mirror speeds from cached hostfile
Loading mirror speeds from cached hostfile
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base 0
extras/7/x86_64 CentOS-7 - Extras 0
updates/7/x86_64 CentOS-7 - Updates 0
repolist: 0

更换阿里云软件源的脚本

curl -o chageyum.sh https://files-cdn.cnblogs.com/files/blogs/827077/chageyum.sh?t=1722300674 && chmod +x chageyum.sh && ./chageyum.sh

更换完成后

[root@localhost ~]# yum repolist
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
源标识 源名称 状态
base/7/x86_64 CentOS-7 - Base - mirrors.aliyun.com 10,072
epel/x86_64 Extra Packages for Enterprise Linux 7 - x86_64 13,791
extras/7/x86_64 CentOS-7 - Extras - mirrors.aliyun.com 526
updates/7/x86_64 CentOS-7 - Updates - mirrors.aliyun.com 6,173
repolist: 30,562

2.3 执行安装脚本

curl -o oracle_install.sh https://files-cdn.cnblogs.com/files/blogs/827077/oracle_install.sh?t=1722301473 && chmod +x oracle_install.sh && ./oracle_install.sh

2.4 关闭SELINUX

[root@localhost ~]# curl -o oracle_install.sh https://files-cdn.cnblogs.com/files/blogs/827077/oracle_install.sh?t=1722301473 && chmod +x oracle_install.sh && ./oracle_install.sh
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 26899 100 26899 0 0 61891 0 --:--:-- --:--:-- --:--:-- 61979 SELinux 将被禁用并需要重启。是否继续? (y/n): y
SELinux 配置已修改,请重启计算机,并确保 SELinux 状态为 Disabled。 *******************************************************************

2.5 重启后再次执行脚本

再次执行脚本后

1)防火墙会放行1521端口

2)主机名设置为oracledb

[root@localhost ~]# ./oracle_install.sh
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
success
success
SELinux 已关闭。
防火墙已放行1521端口 ******************************************************************* 主机名已设置为 oracledb。

2.6 选择字符集

我这里选择了2:ZHS16GBK。这里只提供了两种,如需其他字符集请手动修改。

*******************************************************************

请选择字符集:
1: AL32UTF8
2: ZHS16GBK
请输入选项(1 或 2): 2
更改用户 oracle 的密码 。
passwd:所有的身份验证令牌已经成功更新。
用户oracle已添加,密码为:oracle *******************************************************************

2.7 配置安装路径

1)选择‘y’——脚本会获取到系统中空间最大的目录,并将oracle安装到最大目录下的/data/app/oracle目录中。这里获取到的最大分区就是根目录。如果最大分区是x,则会安装放到/x/data/app/oracle中。

2)选择‘n’——可以自定义安装目录。注意自己指定目录时要确保目录有足够的空间。

*******************************************************************
是否使用默认安装路径 (//data/app/oracle 在最大分区 / 中)? (y/n): y
安装目录已创建,并设置了正确的权限。
用户未选择默认路径 *******************************************************************

2.8 修改hosts文件

脚本会获取本机IP地址,并将IP地址和主机名添加到hosts文件中,并重启网络服务

*******************************************************************

192.168.3.70     oracledb
已更新主机文件。 ******************************************************************* 网络服务已重启。 *******************************************************************

2.9 安装依赖包

有几个没有的包,不影响安装

开始安装依赖包...
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
没有可用软件包 compat-libstdc++-33*.devel。
没有可用软件包 compat-libstdc++-33*.devel。
软件包 libaio-0.3.109-13.el7.x86_64 已安装并且是最新版本
没有可用软件包 libaio-devel*.devel。
·
·
·
·
·
更新完毕:
binutils.x86_64 0:2.27-44.base.el7_9.1 glibc.x86_64 0:2.17-326.el7_9.3 作为依赖被升级:
glibc-common.x86_64 0:2.17-326.el7_9.3 nspr.x86_64 0:4.35.0-1.el7_9 nss-softokn-freebl.x86_64 0:3.90.0-6.el7_9
nss-util.x86_64 0:3.90.0-1.el7_9 完毕!
依赖包安装完成。 *******************************************************************

2.10 解压安装包

1)搜索名称为linux.x64_11gR2_database开头的文件

2)将其解压到临时文件夹/tmp/database/中

3)所有包解压完成后,将/tmp/database/移动到/software/database

*******************************************************************

正在解压安装包: /tmp/linux.x64_11gR2_database_2of7.zip  解压完成.
正在解压安装包: /tmp/linux.x64_11gR2_database_1of7.zip 解压完成.
正在移动数据库目录内容: /tmp/database/* 到 /software/database
正在删除原始数据库目录: /tmp/database
安装包已解压到 /software/database。 *******************************************************************

2.11 配置相关参数

1)修改内核参数 /etc/sysctl.conf

2)修改系统资源限制 /etc/security/limits.conf

3)修改用户限制文件 /etc/pam.d/login

4)修改安装响应文件 /software/database/response/db_install.rsp

5)修改建库响应文件 /software/database/response/dbca.rsp

6)修改oracle用户环境变量 /home/oracle/.bash_profile

*******************************************************************

内核参数配置已修改。
net.ipv4.ip_local_port_range = 9000 65500
fs.file-max = 6815744
kernel.shmall = 10523004
kernel.shmmax = 6465333657
kernel.shmmni = 4096
kernel.sem = 250 32000 100128
net.core.rmem_default = 262144
net.core.wmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576 ******************************************************************* 系统资源限制已修改。 ******************************************************************* 用户限制文件已修改。 ******************************************************************* 安装响应文件内容已修改。 ******************************************************************* 用户未选择默认路径
dbinstall.rsp已修改 ******************************************************************* dbca.rsp 文件已修改。
.bash_profile文件已修改。

2.12 开始安装

1)出现“[WARNING] [INS-32055] 主产品清单位于 Oracle 基目录中。”警告,不影响安装。

2)出现“grep: //data/app/oracle/oraInventory/logs/silentInstall*.log: 没有那个文件或目录”提示,系脚本正在检测oracle是否安装成功,是正常步骤,不要中断。时间长短因服务器性能而定,一般再5分钟左右。

开始安装 Oracle 数据库...
开始安装:
正在启动 Oracle Universal Installer... 检查临时空间: 必须大于 120 MB。 实际为 37763 MB 通过
检查交换空间: 必须大于 150 MB。 实际为 5119 MB 通过
准备从以下地址启动 Oracle Universal Installer /tmp/OraInstall2024-07-30_09-57-10AM. 请稍候...\n
Oracle 数据库安装完成。
开始检查安装日志文件...
grep: //data/app/oracle/oraInventory/logs/silentInstall*.log: 没有那个文件或目录
[WARNING] [INS-32055] 主产品清单位于 Oracle 基目录中。
原因: 主产品清单位于 Oracle 基目录中。
操作: Oracle 建议将此主产品清单放置在 Oracle 基目录之外的位置中。
可以在以下位置找到本次安装会话的日志:
//data/app/oracle/oraInventory/logs/installActions2024-07-30_09-57-10AM.log
grep: //data/app/oracle/oraInventory/logs/silentInstall*.log: 没有那个文件或目录
grep: //data/app/oracle/oraInventory/logs/silentInstall*.log: 没有那个文件或目录
grep: //data/app/oracle/oraInventory/logs/silentInstall*.log: 没有那个文件或目录
Oracle Database 11g 的 安装 已成功。 志文件 -
请查看 '//data/app/oracle/oraInventory/logs/silentInstall2024-07-30_09-57-10AM.log' 以获取详细资料。 以 root 用户的身份执行以下脚本:
1. //data/app/oracle/oraInventory/orainstRoot.sh
2. /data/app/oracle/product/11.2.0/db_1/root.sh Successfully Setup Software.

2.13 执行安装后脚本

安装成功后,会自动执行上面两个脚本

安装成功。装日志文件 \r正在检查安装日志文件 -
以 root 用户的身份执行以下脚本:
1. //data/app/oracle/oraInventory/orainstRoot.sh
2. //data/app/oracle/product/11.2.0/db_1/root.sh
执行 //data/app/oracle/oraInventory/orainstRoot.sh
更改权限//data/app/oracle/oraInventory.
添加组的读取和写入权限。
删除全局的读取, 写入和执行权限。 更改组名//data/app/oracle/oraInventory 到 oinstall.
脚本的执行已完成。
执行 //data/app/oracle/product/11.2.0/db_1/root.sh
Check /data/app/oracle/product/11.2.0/db_1/install/root_oracledb_2024-07-30_09-59-41.log for the output of root script

2.14 配置监听

安装后脚本执行完成后,开始自动配置监听

开始配置监听...
上一次登录:二 7月 30 09:57:09 CST 2024 正在对命令行参数进行语法分析:
参数"silent" = true
参数"responsefile" = /software/database/response/netca.rsp
完成对命令行参数进行语法分析。
Oracle Net Services 配置:
完成概要文件配置。
Oracle Net 监听程序启动:
正在运行监听程序控制:
/data/app/oracle/product/11.2.0/db_1/bin/lsnrctl start LISTENER
监听程序控制完成。
监听程序已成功启动。
监听程序配置完成。
成功完成 Oracle Net Services 配置。退出代码是0
\n
监听创建完成。 *******************************************************************

2.15 静默建库

响应文件已经在上面修改好了,这里直接根据需求选择是否建库即可

是否需要创建实例?(y/n): y
开始建库...
上一次登录:二 7月 30 09:59:41 CST 2024
复制数据库文件
1% 已完成
3% 已完成
11% 已完成
18% 已完成
26% 已完成
37% 已完成
正在创建并启动 Oracle 实例
40% 已完成
45% 已完成
50% 已完成
55% 已完成
56% 已完成
60% 已完成
62% 已完成
正在进行数据库创建
66% 已完成
70% 已完成
73% 已完成
85% 已完成
96% 已完成
100% 已完成
有关详细信息, 请参阅日志文件 "/data/app/oracle/cfgtoollogs/dbca/orcl/orcl.log"。
静默建库已完成。 *******************************************************************

2.16 为oracle服务和监听配置开机自启

*******************************************************************

Created symlink from /etc/systemd/system/multi-user.target.wants/oracle.service to /etc/systemd/system/oracle.service.
已添加开机自启 *******************************************************************

2.17 输出安装信息

*******************************************************************

服务器信息

*******************************************************************

主机名:oracledb
本机IP:192.168.3.70
oracle用户密码:oracle ******************************************************************* 数据库信息 ******************************************************************* GDBNAME:orcl
SID:orcl
PORT:1521
sys用户密码:oracle
system用户密码:oracle
字符集:ZHS16GBK ******************************************************************* 脚本执行完成。

在Centos7中使用一键脚本安装Oracle11g的更多相关文章

  1. 目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本

    参考: https://www.cnblogs.com/yejingcn/p/10278473.html centos7启动oracle su - oracle //切换到自己的oracle账户 ls ...

  2. 【CentOS】在Centos7 下无图形界面安装 Oracle11g

    目标 - 在虚拟机CentOS7中无图形界面安装Oracle11G R2版本 ① 系统要求以及准备 1. 物理内存不小于1G: 查看方式: # grep MemTotal /proc/meminfo ...

  3. 在CentOS7中利用yum命令安装mysql

    在CentOS7中利用yum命令安装mysql 原创 2016年08月31日 10:42:33 标签: mysql / centos 4832 一.说明 我们是在VMware虚拟机上安装的mysql, ...

  4. Centos7中ELK集群安装流程

    Centos7中ELK集群安装流程   说明:三个版本必须相同,这里安装5.1版. 一.安装Elasticsearch5.1   hostnamectl set-hostname elk vim /e ...

  5. 关于centos7中使用rpm方式安装mysql5.7版本后无法使用root登录的问题

    最近在centos7中通过rpm方式安装了最新版本的mysql-server 5.7 (mysql57-community-release-el7-7.noarch.rpm) ,发现安装成功后无法使用 ...

  6. Linux CentOS7 下无图形界面安装Oracle11G R2版本

    01,系统 Centos7 数据库版本 Oracle_11gR2 ,以及硬件要求 内存不能小于 1G,可用硬盘不小于8G Swap分区空间不小于2G grep MemTotal /proc/memin ...

  7. CentOS7中ELK6.2.3安装

      一.配置主机名 hostnamectl set-hostname elk vim /etc/sysconfig/network修改HOSTNAME=elk 安装Java环境:yum install ...

  8. CentOS7中rpm,yum软件安装命令

    RPM包常用安装位置说明 /etc/                   配置文件安装目录 /usr/bin/               可执行的命令安装目录 /usr/lib/           ...

  9. SELinux 了解及CentOS7 中 semanage命令的安装

    SELinux 安全子系统 SELinux(Security-Enhanced Linux)是美国国家安全局在Linux开源社区的帮助下开发的一个强制访问控制(MAC,Mandatory Access ...

  10. 虚拟机VMware15的CentOS7.3的docker下安装Oracle11g

    1.拉取镜像docker pull registry.cn-hangzhou.aliyuncs.com/helowin/oracle_11g 2.安装容器:docker run -d --name o ...

随机推荐

  1. Java方法传参中"..."的作用

    # Java方法传参中 `...` 类型名 介绍 - <font color = 'blue'>**类型 ... 类型名**</font> 表示可变长度的参数,本质是**数组* ...

  2. UML建模工具Astah Pro 8破解教程2022最新最详细版

    (2022最新最详细版)UML建模工具Astah Pro 8破解教程 本文作者严正声明:拒绝盗版行为,打击盗版,痛恨吃白食的家伙,我一直都是坚定思想,有钱了一定要支持正版,所以此文档贡献,只为学习交流 ...

  3. 修改 WIN10 WIN11 操作系统启动菜单名称

    修改 WIN10 WIN11 操作系统启动菜单名称 一块硬盘装双系统后,自动更新的启动菜单名称可能无法区分WIN10.WIN11,需要通过"卷2"."卷3"字样 ...

  4. 使用 ClickHouse 做日志分析

    原作:Monika Singh & Pradeep Chhetri 这是我们在 Monitorama 2022 上发表的演讲的改编稿.您可以在此处找到包含演讲者笔记的幻灯片和此处的视频. 当 ...

  5. 玩爆你的手机联系人--T9搜索

        自己研究了好几天联系人的T9搜索算法, 先分享出来给大家看看. 欢迎指教.如果有大神有更好的T9搜索算法, 那更好啊,大家一起研究研究,谢谢. 第一部分是比较简单的获取手机联系人. 获取联系人 ...

  6. Mybatis中#{}和${}的区别:

    简单来说 #{} 会在将参数加上引号,例如:   SELECT * FROM user WHERE username=#{username} ;   带上参数后的SQL语句即:   SELECT * ...

  7. 零基础写框架(3): Serilog.NET 中的日志使用技巧

    .NET 中的日志使用技巧 Serilog Serilog 是 .NET 社区中使用最广泛的日志框架,所以笔者使用一个小节单独讲解使用方法. 示例项目在 Demo2.Console 中. 创建一个控制 ...

  8. HBCK2修复hbase2的常见场景

    上一文章已经把HBCK2 怎么在小于hbase2.0.3版本的编译与用法介绍了,解决主要场景 查看hbase存在的问题 一.使用hbase hbck命令 hbase hbck命令是对hbase的元数据 ...

  9. WPF Canvas在Image 图像上绘图,自适应缩放.

    效果如图 实现了绘图,自适应缩放 核心代码如下 <Window.InputBindings> <KeyBinding Key="Z" Modifiers=&quo ...

  10. Spring Boot入门实验

    一. 实验目的和要求 1.掌握使用 IDEA 通过 Maven 和 Spring Initializr 的方式创建 Spring Boot 应用程序: 2.掌握 Maven 的工作原理: 3.了解 s ...