HCRM博客

解决CentOS安装Oracle白条问题的方法详解

CentOS 系统安装 Oracle 数据库实战指南

核心提示: 在 CentOS 环境下成功部署 Oracle 数据库,关键在于严谨的系统配置与精准的步骤执行,本文提供经过验证的详细流程。


安装前的关键准备工作

解决CentOS安装Oracle白条问题的方法详解-图1
  1. 系统资源核查:

    • 内存: 物理内存建议不低于 4GB,推荐 8GB 或更高,交换空间配置需遵循 Oracle 官方建议(通常物理内存 1-2 倍)。
    • 磁盘空间:
      • /tmp 目录:至少 1GB 可用空间。
      • Oracle 安装目录:根据版本不同,通常需要 10-20GB 或更多。
      • 数据库文件存储:依据数据量规划,预留充足空间(建议独立分区如 /u01/u02)。
    • 操作系统: CentOS 7 或 CentOS 8 (需注意 Oracle 对特定小版本的认证支持),使用 cat /etc/redhat-release 确认版本。
  2. 软件包依赖安装: 以 root 身份执行,安装必需组件包组及工具:

    yum groupinstall "Development Tools" -y
    yum install binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel elfutils-libelf-devel -y

    对于图形化安装界面,需确保桌面环境或 X11 转发配置正确。

  3. 内核参数优化: 编辑 /etc/sysctl.conf,加入或修改以下参数(数值依据服务器硬件调整):

    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

    执行 sysctl -p 使配置生效。

  4. 用户资源限制调整: 编辑 /etc/security/limits.conf,为 oracle 用户设置:

    解决CentOS安装Oracle白条问题的方法详解-图2
    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 hard memlock 134217728
    oracle soft memlock 134217728
  5. 创建 Oracle 用户与组:

    groupadd -g 54321 oinstall
    groupadd -g 54322 dba
    groupadd -g 54323 oper
    useradd -u 54321 -g oinstall -G dba,oper oracle
    passwd oracle  # 设置强密码
  6. 规划与创建安装目录:

    mkdir -p /u01/app/oracle/product/19.3.0/dbhome_1
    mkdir -p /u01/app/oraInventory
    chown -R oracle:oinstall /u01/app
    chmod -R 775 /u01/app
  7. 配置 Oracle 用户环境变量: 以 oracle 身份登录,编辑 ~/.bash_profile,添加:

    export ORACLE_BASE=/u01/app/oracle
    export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1
    export ORACLE_SID=orcl  # 设定数据库实例名
    export PATH=$PATH:$ORACLE_HOME/bin
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
    export NLS_LANG=AMERICAN_AMERICA.AL32UTF8  # 设置字符集

执行 Oracle 数据库软件安装

  1. 获取安装文件: 从 Oracle 官网下载对应版本的 Linux x86-64 安装包 (如 linuxx64_193000_db_home.zip),上传至服务器(如 /tmp)。
  2. 解压安装文件:
    su - oracle
    cd $ORACLE_HOME
    unzip /tmp/linuxx64_193000_db_home.zip
  3. 启动图形化安装:
    export DISPLAY=<your_local_ip>:0.0  # 如使用 X11 转发
    cd $ORACLE_HOME
    ./runInstaller
    • 配置选项: 选择“仅安装数据库软件”,跳过数据库创建(后续单独执行更可控)。
    • 安装类型: 选择“单实例数据库安装”。
    • 语言: 选择所需语言(通常包含英文)。
    • 安装位置: 确认 ORACLE_BASEORACLE_HOME 路径正确。
    • 操作系统组: 选择 oinstall (Primary),dba (OSDBA),oper (OSOPER)。
  4. 执行 root 脚本: 安装程序最后会提示以 root 身份执行两个脚本:
    /u01/app/oraInventory/orainstRoot.sh
    /u01/app/oracle/product/19.3.0/dbhome_1/root.sh

    按提示执行即可。

创建 Oracle 数据库实例

解决CentOS安装Oracle白条问题的方法详解-图3
  1. 使用 DBCA (Database Configuration Assistant):
    su - oracle
    dbca
  2. DBCA 创建向导:
    • 选择操作: “创建数据库”。
    • 数据库模板: 根据需求选择(如“一般用途或事务处理”)。
    • 数据库标识: 输入全局数据库名 (如 orcl.yourdomain.com) 和 SID (如 orcl)。
    • 管理选项: 通常先不配置 EM Express 或云控制。
    • 数据库凭据: 为 SYS, SYSTEM 等管理用户设置统一或单独的管理密码(务必使用强密码)。
    • 存储位置: 指定数据库文件位置(如使用 ASM 或文件系统),确保路径有权限且空间足够。
    • 恢复配置: 配置快速恢复区 (Fast Recovery Area) 位置和大小(重要!用于备份和恢复)。
    • 根据需求选择是否安装示例 Schema 或自定义脚本。
    • 初始化参数: 通常接受默认,或按需调整内存分配 (SGA, PGA)、进程数、字符集(必须与之前环境变量 NLS_LANG 一致,如 AL32UTF8)、连接模式等。
    • 创建选项: 选择“创建数据库”,DBCA 将开始创建过程,耗时较长。
  3. 验证数据库状态:
    sqlplus / as sysdba
    SQL> SELECT status, instance_name FROM v$instance;
    SQL> SELECT name, open_mode FROM v$database;
    SQL> exit

    确认状态为 OPEN

基础配置与连接测试

  1. 配置监听器 (LISTENER):
    • DBCA 会自动创建监听器,检查状态:
      lsnrctl status
    • 若需手动配置或修改,使用 netca (Net Configuration Assistant) 或编辑 $ORACLE_HOME/network/admin/listener.oratnsnames.ora
  2. 设置开机自启动 (可选但推荐):
    • 创建 /etc/oratab 条目(如果不存在):
      orcl:/u01/app/oracle/product/19.3.0/dbhome_1:Y  # 最后一个 Y 表示随 dbstart 启动
    • 创建系统服务文件(CentOS 7+ 使用 systemd),/usr/lib/systemd/system/oracle-rdbms.service (内容需根据环境编写)。
  3. 防火墙开放端口: 开放 Oracle 监听端口(默认 1521)及可能需要的 EM Express 端口(如 5500):
    firewall-cmd --zone=public --add-port=1521/tcp --permanent
    firewall-cmd --zone=public --add-port=5500/tcp --permanent # 如果使用 EM Express
    firewall-cmd --reload
  4. 客户端连接测试: 使用 SQL*Plus、SQL Developer 或其他客户端工具,通过配置好的服务名 (Service Name) 或 SID 连接数据库。

个人观点 在CentOS上部署Oracle数据库确实需要投入时间和精力,尤其是前期系统参数配置和依赖检查环节,但按照本文的标准化流程操作,能够规避很多常见安装问题,建议生产环境安装前务必在测试服务器演练,重点关注磁盘规划、内存参数和字符集配置,Oracle数据库的稳定性与性能表现值得前期投入的细致部署工作。

经验提示:数据库创建阶段若因空间不足失败,清理后需手动删除 $ORACLE_BASE/cfgtoollogs/dbca 中的残留日志才能重新运行 DBCA,使用 df -h 命令密切监控 /tmp 和数据库目录空间至关重要。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/37899.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~