当前位置: 首页 > news >正文

Oracle 19c 静默安装

文章目录

    • 环境介绍
    • 安装包下载
    • 准备工作
      • 配置 yum 源
      • 安装依赖包
      • 创建用户和用户组
      • 创建必要目录
      • 关闭 SELinux
      • 配置内核参数
      • 配置资源限制
      • 配置环境变量
    • Oracle 19c 安装
      • 解压缩
      • 编辑相应文件
      • 执行静默安装
      • 配置监听
      • 静默创建数据库
    • 数据库维护
      • 连接数据库

环境介绍

操作系统为 CentOS 7.9

Oracle 官方建议:

  • 单实例最小安装内存 1G,推荐 2G
  • 集群环境最小内存 8G

安装包下载

从 Oracle 官方下载地址 下载 19c 安装包,需要注册 Oracle 账号才能下载。

准备工作

以下是 Oracle 静默安装前的必须准备工作。

配置 yum 源

CentOS 配置国内 yum 源,已配置可忽略。

cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

获取国内 yum 源:

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# 或者
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

重新生成 yum 缓存:

yum clean all
yum makecache

安装依赖包

安装 EPEL 扩展源:

yum install epel-release

安装依赖包:

yum install -y bc binutils compat-libcap1 compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make smartmontools sysstat unixODBC gcc-c++ kmod kmod-libs

创建用户和用户组

以 root 用户身份执行以下操作,创建 Oracle 所需的用户组和 Oracle 用户。

groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle

创建必要目录

创建 Oracle 安装与库存目录,并设置相应权限:

mkdir -p /home/oracle19c/app/oracle
mkdir -p /home/oracle19c/oraInventory
chown -R oracle:oinstall /home/oracle19c/
mkdir -p /home/oracle19c/app/oracle/product/19.0.0/db_1
chown -R oracle:oinstall /home/oracle19c/app/oracle/product/
chmod -R 775 /home/oracle19c/app/oracle

关闭 SELinux

vi /etc/selinux/config
SELINUX=disabled # 重启生效

配置内核参数

cat << EOF >> /etc/sysctl.conf
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmmax = 7344394076    
kernel.shmall = 1793064 
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

配置资源限制

编辑 /etc/security/limits.conf 文件,添加 Oracle 用户资源限制:

vi /etc/security/limits.conf

添加:

oracle   soft   nofile    1024
oracle   hard   nofile    65536
oracle   soft   nproc     16384
oracle   hard   nproc     16384
oracle   soft   stack     10240
oracle   hard   stack     32768
oracle   soft   memlock   3145728
oracle   hard   memlock   3145728

同时,在 /etc/pam.d/login 文件中确保加入以下配置以使 PAM 限制生效:

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

配置环境变量

配置 ORACLE 用户进程限制,在 /etc/profile 中添加:

# ORACLE 用户进程限制
if [ $USER = "oracle" ]; thenif [ $SHELL = "/bin/ksh" ]; thenulimit -p 16384ulimit -n 65536elseulimit -u 16384 -n 65536fi
fi

生效:

source /etc/profile

切换到 oracle 用户:

su - oracle
vi ~/.bash_profile

添加以下内容:

# Oracle 用户环境变量配置
export EDITOR=vi
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_SID=orcl
export ORACLE_BASE=/home/oracle19c/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/db_1
export INVENTORY_LOCATION=/home/oracle19c/oraInventory
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export NLS_LANG="Simplified Chinese_China.UTF8"
export NLS_DATE_FORMAT="YYYY-MM-DD HH24:MI:SS"
export PATH=$ORACLE_HOME/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin:$PATH:$HOME/bin
umask 022

然后执行:

source ~/.bash_profile

Oracle 19c 安装

在 root 用户下,将安装包上传到 /home/oracle19c/app/oracle/product/19.0.0/db_1 目录下。

chown -R oracle:oinstall LINUX.X64_193000_db_home.zip

解压缩

切换 oracle 用户

su - oraclecd /home/oracle19c/app/oracle/product/19.0.0/db_1unzip LINUX.X64_193000_db_home.zip

编辑相应文件

在 oracle 用户下执行:

vi /home/oracle/rsp/db_install.rsp

写入:

oracle.install.responseFileVersion=/oracle/install/rspfmt_dbinstall_response_schema_v19.0.0
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/home/oracle19c/oraInventory
ORACLE_HOME=/home/oracle19c/app/oracle/product/19.0.0/db_1
ORACLE_BASE=/home/oracle19c/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
oracle.install.db.rootconfig.executeRootScript=false

执行静默安装

在 oracle 用户下执行:

cd /home/oracle19c/app/oracle/product/19.0.0/db_1

执行如下命令:

./runInstaller -silent -force -noconfig -ignorePrereq -responseFile /home/oracle/rsp/db_install.rsp
Launching Oracle Database Setup Wizard...[WARNING] [INS-13014] Target environment does not meet some optional requirements.CAUSE: Some of the optional prerequisites are not met. See logs for details. installActions2025-04-24_03-16-55PM.logACTION: Identify the list of failed prerequisite checks from the log: installActions2025-04-24_03-16-55PM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
The response file for this session can be found at:/home/oracle19c/app/oracle/product/19.0.0/db_1/install/response/db_2025-04-24_03-16-55PM.rspYou can find the log of this install session at:/tmp/InstallActions2025-04-24_03-16-55PM/installActions2025-04-24_03-16-55PM.logAs a root user, execute the following script(s):1. /home/oracle19c/oraInventory/orainstRoot.sh2. /home/oracle19c/app/oracle/product/19.0.0/db_1/root.shExecute /home/oracle19c/oraInventory/orainstRoot.sh on the following nodes: 
[localhost]
Execute /home/oracle19c/app/oracle/product/19.0.0/db_1/root.sh on the following nodes: 
[localhost]Successfully Setup Software with warning(s).
Moved the install session logs to:/home/oracle19c/oraInventory/logs/InstallActions2025-04-24_03-16-55PM

根据提示切换 root 用户,执行:

su root
/home/oracle19c/oraInventory/orainstRoot.sh
/home/oracle19c/app/oracle/product/19.0.0/db_1/root.sh

配置监听

vi /home/oracle/rsp/netca.rsp

写入:


[GENERAL]
RESPONSEFILE_VERSION="19.0"
CREATE_TYPE="CUSTOM"
LOG_FILE="/home/oracle/cfgtoollogs/netca/netca.log[oracle.net.ca]
INSTALLED_COMPONENTS={"server","net8","javavm"}
INSTALL_TYPE="typical"
LISTENER_NUMBER=1
LISTENER_NAMES={"LISTENER"}
LISTENER_PROTOCOLS={"TCP;1521"}
LISTENER_START="LISTENER"
NAMING_METHODS={"TNSNAMES","ONAMES","HOSTNAME"}
NSN_NUMBER=1
NSN_NAMES={"EXTPROC_CONNECTION_DATA"}
NSN_SERVICE={"PLSExtProc"}
NSN_PROTOCOLS={"TCP;HOSTNAME;1521"}

切换至 oracle 用户后,使用以下命令静默配置监听:

netca -silent -responsefile /home/oracle/rsp/netca.rsp

查看监听状态:

lsnrctl status

静默创建数据库

使用 DBCA 的方式创建数据库,切换 oracle 用户执行:

vi /home/oracle/rsp/dbca.rsp

写入配置,注意修改密码:

responseFileVersion=/oracle/assistants/rspfmt_dbca_response_schema_v19.0.0
gdbName=orcl
sid=orcl
databaseConfigType=SI
templateName=General_Purpose.dbc
createAsContainerDatabase=false
sysPassword=admin123
systemPassword=admin123
datafileDestination=/home/oracle19c/app/oracle/oradata
storageType=FS
sampleSchema=TRUE
databaseType=OLTP
automaticMemoryManagement=FALSE
totalMemory=4096
characterSet=ZHS16GBK

执行以下命令:

dbca -silent -createDatabase -responseFile /home/oracle/rsp/dbca.rsp

数据库维护

Oracle 常用维护命令。

连接数据库

sqlplus / as sysdba
http://www.xdnf.cn/news/402229.html

相关文章:

  • LeetCode[101]对称二叉树
  • 05_jdk8新特性
  • SpringAI框架中的RAG模块详解及应用示例
  • WebRTC:去中心化网络P2P框架解析
  • continue通过我们的开源 IDE 扩展和模型、规则、提示、文档和其他构建块中心,创建、共享和使用自定义 AI 代码助手
  • 白帽SEO与黑帽SEO差异
  • 24.(vue3.x+vite)引入组件并动态挂载(mount)
  • 蓝桥杯13届 卡牌
  • Docker私有仓库实战:官方registry镜像实战应用
  • ZYNQ笔记(二十一): VDMA HDMI 彩条显示
  • 当生产了~/qt-arm/bin/qmake,可以单独编译其他-源码的某个模块,如下,编译/qtmultimedia
  • openwrt目录结构(部分)
  • 【开源工具】深度解析:基于PyQt6的Windows时间校时同步工具开发全攻略
  • ZYNQ处理器在发热后功耗增加的原因分析及解决方案
  • Vue3 Echarts 3D饼图(3D环形图)实现讲解附带源码
  • springCloud/Alibaba常用中间件之Setinel实现熔断降级
  • Python动态渲染页面抓取之Selenium使用指南
  • springboot-web基础
  • 单片机学习Day08--相邻流水灯
  • 主流编程语言中ORM工具全解析
  • 对基于再生龙制作的Linux系统的硬盘进行扩容
  • 10. Spring AI PromptTemplate:从模板到高级技巧
  • Go 语言 slice(切片) 的使用
  • 智能停车场如何实现无缝通信?Canopen转 Profibus网关来解答
  • [高阶数据结构]二叉树经典面试题
  • 【秣厉科技】LabVIEW工具包——OpenCV 教程(21):CUDA 加速方案
  • 【生产实践】Linux中/usr/bin、/usr/sbin与/usr/local的关系解析(2025年技术规范)
  • 养生:拥抱健康生活的全方位指南
  • 多模态论文笔记——Coca
  • 基于Vue3.0的高德地图api教程005:实现绘制线并编辑功能