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

待验证---Oracle 19c 在 CentOS 7 上的快速安装部署指南

Oracle 19c 在 CentOS 7 上的快速安装部署指南

Oracle Database 19c 是一个功能强大的企业级数据库系统,下面我将为您提供在 CentOS 7 上快速安装部署 Oracle 19c 的详细步骤。

一、准备工作

1. 系统要求

  • CentOS 7 (64位)
  • 最小内存: 2GB (推荐 8GB 以上)
  • 最小磁盘空间: 12GB (推荐 50GB 以上)
  • Swap 空间: 至少等于物理内存大小

2. 安装必要的软件包

yum install -y oracle-database-preinstall-19c

这个包会自动配置系统环境,包括创建用户组、设置内核参数等。

二、下载 Oracle 19c 软件

从 Oracle 官方网站下载 Oracle Database 19c 安装包:

# 创建下载目录
mkdir -p /opt/oracle/software
cd /opt/oracle/software# 下载安装包 (需要 Oracle 账号)
# 可以从 https://www.oracle.com/database/technologies/oracle-database-software-downloads.html 下载
# 文件名: LINUX.X64_193000_db_home.zip(Oracle Database 19c for Linux x86-64选择后面的zip)

在这里插入图片描述

三、安装 Oracle 19c

1. 解压安装包

# 切换到 oracle 用户
su - oracle# 创建安装目录
mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1# 解压安装包
cd /u01/app/oracle/product/19.0.0/dbhome_1
unzip -q /opt/oracle/software/LINUX.X64_193000_db_home.zip

2. 执行静默安装

# 创建响应文件
cat > /home/oracle/db_install.rsp <<EOF
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=oper
oracle.install.db.OSBACKUPDBA_GROUP=backupdba
oracle.install.db.OSDGDBA_GROUP=dgdba
oracle.install.db.OSKMDBA_GROUP=kmdba
oracle.install.db.OSRACDBA_GROUP=racdba
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false
DECLINE_SECURITY_UPDATES=true
EOF# 执行安装
cd /u01/app/oracle/product/19.0.0/dbhome_1
./runInstaller -silent -responseFile /home/oracle/db_install.rsp -noconfig

3. 执行根脚本

安装完成后,会提示执行两个根脚本,切换到 root 用户执行:

# 以 root 用户执行
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/dbhome_1/root.sh

四、创建数据库

1. 准备响应文件

# 切换回 oracle 用户
su - oracle# 创建响应文件
cat > /home/oracle/dbca.rsp <<EOF
gdbName=orcl
sid=orcl
createAsContainerDatabase=false
templateName=General_Purpose.dbc
sysPassword=YourPassword123
systemPassword=YourPassword123
emConfiguration=NONE
datafileDestination=/u01/app/oracle/oradata
characterSet=AL32UTF8
totalMemory=2048
EOF

2. 创建数据库

# 设置环境变量
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH# 使用 DBCA 创建数据库
dbca -silent -createDatabase -responseFile /home/oracle/dbca.rsp

五、配置环境

1. 设置环境变量

# 为 oracle 用户添加环境变量
cat > /home/oracle/.bash_profile <<EOF
# Oracle 环境变量
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export ORACLE_SID=orcl
export PATH=\$PATH:\$ORACLE_HOME/bin
EOF# 使环境变量生效
source /home/oracle/.bash_profile

2. 配置监听

# 配置监听
netca -silent -responseFile $ORACLE_HOME/assistants/netca/netca.rsp

3. 启动数据库

# 连接到 SQL*Plus
sqlplus / as sysdba# 启动数据库
SQL> startup

六、验证安装

# 检查数据库状态
sqlplus / as sysdba <<EOF
select status from v\$instance;
exit;
EOF# 检查监听状态
lsnrctl status

七、配置自启动

# 创建自启动脚本
cat > /etc/systemd/system/oracle-database.service <<EOF
[Unit]
Description=Oracle Database Service
After=network.target[Service]
Type=forking
User=oracle
Group=oinstall
ExecStart=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbstart /u01/app/oracle/product/19.0.0/dbhome_1
ExecStop=/u01/app/oracle/product/19.0.0/dbhome_1/bin/dbshut /u01/app/oracle/product/19.0.0/dbhome_1
Restart=no[Install]
WantedBy=multi-user.target
EOF# 启用服务
systemctl daemon-reload
systemctl enable oracle-database.service

八、常见问题解决

  1. 内存不足:修改 /etc/sysctl.conf 增加 swap 空间
  2. 权限问题:确保 oracle 用户对安装目录有完全权限
  3. 防火墙问题:配置防火墙允许 Oracle 端口 (默认 1521)
    firewall-cmd --permanent --add-port=1521/tcp
    firewall-cmd --reload
    

总结

通过以上步骤,您已经成功在 CentOS 7 上安装并配置了 Oracle Database 19c。这种静默安装方式适合快速部署,无需图形界面交互,特别适合服务器环境。

请记得修改示例中的密码,并根据实际环境调整内存和存储配置。

    当前模型请求量过大,请求排队约 1 位,请稍候或切换至其他模型问答体验更流畅。

相关文章:

  • C#与SVN的深度集成:实现版本控制自动化管理​
  • MATLAB实现神经网络的OCR识别
  • Web 基础与 HTTP 协议
  • STM32的SysTick
  • 学成在线。。。
  • 【爬虫】码上爬第2题:headersi请求头验证
  • 排序算法详解笔记
  • 详解UnityWebRequest类
  • Day15(贪心算法)——LeetCode121.买卖股票的最佳时机55.跳跃游戏
  • 文献阅读(一)植物应对干旱的生理学反应 | The physiology of plant responses to drought
  • 机器学习基础理论 - 目标函数,损失函数,代价函数
  • C++入门(namespace/输入输出)
  • docker存储
  • 23.C语言指针相关知识点2
  • C++代码随想录刷题知识分享-----面试题链表相交
  • 传统农耕展陈如何突破?数字多媒体能否重构文化体验边界?
  • 阿里云ftp服务器登录要怎么做?如何访问ftp服务器?
  • 记录一下QA(from deepseek)
  • 开发vue项目所需要安装的依赖包
  • Redis ⑦-set | Zset
  • 王毅:坚持金砖团结合作,改革完善全球治理
  • 杭州银行一季度净赚超60亿增逾17%,增速较去年同期有所回落
  • 秦洪看盘|浮现新预期,存量资金积极调仓
  • 网贷放款后自动扣除高额会员费,多家网贷平台被指变相收取“砍头息”
  • 王沪宁会见越共中央委员、越南祖国阵线中央副主席兼秘书长阮氏秋荷
  • 李良生已任应急管理部党委委员、政治部主任