You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CentOS 7环境下批量安装Oracle 12.2的Shell脚本咨询

CentOS 7 环境Oracle 12.2 安装Shell脚本(适配/home安装路径、默认权限)

前置准备

  • 提前将Oracle 12.2官方安装包linuxx64_12201_database.zip上传到所有目标服务器的/opt目录
  • 所有服务器提前配置可用CentOS 7 yum源,提前关闭SELinux、停止firewalld服务
  • 服务器硬件要求:内存≥2G,swap分区≥4G,/home目录剩余空间≥15G

可用安装脚本

#!/bin/bash
# 安装依赖包
yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unzip

# 创建Oracle用户和用户组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
# 默认密码可自行修改
echo "oracle" | passwd --stdin oracle

# 配置内核参数
cat >> /etc/sysctl.conf << EOF
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
EOF
sysctl -p

# 配置用户限制
cat >> /etc/security/limits.conf << EOF
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
EOF

# 配置Oracle环境变量
cat >> /home/oracle/.bash_profile << EOF
export ORACLE_BASE=/home/oracle
export ORACLE_HOME=\$ORACLE_BASE/product/12.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=\$ORACLE_HOME/bin:\$PATH
EOF
source /home/oracle/.bash_profile

# 创建安装目录,设置默认权限
mkdir -p /home/oracle/product/12.2.0/dbhome_1
mkdir -p /home/oracle/oradata
mkdir -p /home/oracle/oraInventory
chown -R oracle:oinstall /home/oracle
chmod -R 775 /home/oracle

# 解压安装包
cd /opt
unzip -q linuxx64_12201_database.zip
chown -R oracle:oinstall /opt/database

# 生成静默安装应答文件
cat > /opt/db_install.rsp << EOF
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=$(hostname)
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/home/oracle/oraInventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/home/oracle/product/12.2.0/dbhome_1
ORACLE_BASE=/home/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oinstall
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
DECLINE_SECURITY_UPDATES=true
EOF
chown oracle:oinstall /opt/db_install.rsp

# 执行静默安装
su - oracle -c "/opt/database/runInstaller -silent -ignoreSysPrereqs -ignorePrereq -responseFile /opt/db_install.rsp"
# 等待安装完成执行 root 脚本
sleep 15m
/home/oracle/oraInventory/orainstRoot.sh
/home/oracle/product/12.2.0/dbhome_1/root.sh

# 静默配置监听
su - oracle -c "netca /silent /responsefile /opt/database/response/netca.rsp"

# 静默创建数据库
cat > /opt/dbca.rsp << EOF
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle123"
SYSTEMPASSWORD = "oracle123"
CHARACTERSET = "AL32UTF8"
NATIONALCHARACTERSET= "UTF8"
LISTENERS = "LISTENER"
TOTALMEMORY = 1024
EOF
su - oracle -c "dbca -silent -createDatabase -responseFile /opt/dbca.rsp"

使用说明

  • 将脚本保存为oracle12c_install.sh,执行chmod +x oracle12c_install.sh赋予执行权限
  • 10台服务器批量部署可搭配ansible推送执行,无需逐台操作
  • 安装完成后执行su - oracle -c "sqlplus / as sysdba"验证安装状态,能正常进入SQL命令行即为安装成功

注意事项

  • 单台服务器脚本执行时长约15-20分钟,执行过程中不要手动中断
  • 脚本已按要求配置安装路径为/home/oracle,所有目录权限遵循Oracle官方默认要求,无需额外调整
  • 可根据实际需求修改应答文件中的实例名、密码、字符集等参数

内容的提问来源于stack exchange,提问作者Sumedh Chatse

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 11:06:07