温馨提示×

centos下oracle配置有哪些要点

小樊
39
2025-12-13 12:43:41
栏目: 云计算

CentOS 下 Oracle 配置要点

一 系统与环境准备

  • 运行环境建议:操作系统选择 CentOS 7/8(64 位),内存至少 2 GB(建议 4 GB+),安装所需磁盘空间至少 10 GB(建议 20 GB+);Swap 按内存规模配置:内存 1–2 GB 时设为内存的 1.5 倍2–16 GB 时与内存相同,>16 GB 时设为 16 GB。完成后先执行 yum update -y 更新系统。
  • 依赖包安装:安装常见编译与网络库,如 binutils、compat-libcap1、compat-libstdc+±33、gcc/gcc-c++、glibc/glibc-devel、ksh、libaio/libaio-devel、libXext、libXtst、libX11、make、sysstat、unixODBC/unixODBC-devel 等。
  • 创建用户与组:建议创建专用账户与组,如 oinstall、dba,并创建 Oracle 用户(示例:useradd -g oinstall -G dba oracle),设置安全密码。
  • 目录与权限:规划 Oracle 基目录(常见为 /u01/app/oracle),创建并授权:mkdir -p /u01/app/oracle && chown -R oracle:oinstall /u01 && chmod -R 775 /u01。
  • 主机名与解析:设置主机名(如 hostnamectl set-hostname db),并在 /etc/hosts 中确保主机名可解析到本机 IP,避免安装/监听异常。

二 内核参数与资源限制

  • 内核参数(/etc/sysctl.conf):设置共享内存、信号量、文件句柄与网络参数,典型值如下(按实际内存与负载微调):
    • fs.aio-max-nr = 1048576
    • fs.file-max = 6815744
    • kernel.shmall = 2097152
    • kernel.shmmax = 建议设为物理内存一半(单位字节,示例:4294967295 约 4 GB)
    • 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 使参数生效。
  • 用户资源限制(/etc/security/limits.conf):
    • oracle soft nproc 2047;oracle hard nproc 16384
    • oracle soft nofile 1024;oracle hard nofile 65536
    • oracle soft stack 10240
  • PAM 与登录会话:在 /etc/pam.d/login 中加入 session required pam_limits.so,确保登录会话应用资源限制。

三 安装与基础配置

  • 软件获取与解压:从 Oracle 官方获取 Linux x86_64 安装介质(如 19c),上传至 /u01/app/oracle 并解压(示例:unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME)。
  • Oracle 用户环境变量(~/.bash_profile 或 ~/.bashrc):
    • export ORACLE_BASE=/u01/app/oracle
    • export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1
    • export ORACLE_SID=orcl
    • export PATH=$ORACLE_HOME/bin:$PATH
    • 可选:export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
    • 语言:export LANG=en_US.UTF-8;export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
      执行 source ~/.bash_profile 生效。
  • 图形化安装与脚本:以 oracle 用户运行 ./runInstaller 完成安装,按提示执行 root.shorainstRoot.sh 等后续脚本。

四 网络与监听配置

  • 监听程序(listener.ora):位于 $ORACLE_HOME/network/admin,常用最小配置:
    • LISTENER =
      (DESCRIPTION_LIST =
      (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
      )
      )
  • 启动与验证:使用 lsnrctl start|status 管理监听;必要时在 listener.ora 的 SID_LIST_LISTENER 中静态注册实例(生产环境更推荐让实例自动注册)。
  • 客户端与服务名:服务器端或客户端配置 tnsnames.ora,示例:
    • ORCL =
      (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = your_hostname)(PORT = 1521))
      (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
      )
      )
  • 连通性测试:使用 sqlplus sys/password@//your_hostname:1521/orcl as sysdbatnsping ORCL 验证。

五 运行安全与运维要点

  • 防火墙与端口:在 CentOS 7/8 放行 1521/TCP(firewalld/iptables),变更后重载规则并测试远程连接。
  • SELinux:安装阶段可临时 setenforce 0 排障;生产环境建议保持 enforcing 并通过策略/布尔值精细化放行,而非直接禁用。
  • 字符集与语言:建议数据库字符集使用 AL32UTF8,环境变量设置 NLS_LANG=AMERICAN_AMERICA.AL32UTF8,避免客户端乱码。
  • 日志与诊断:关注 $ORACLE_HOME/network/log/listener.log、数据库 Alert 日志Trace 文件,利用 ADRDDM 做问题定位与性能分析。
  • 开机自启:配置 systemd 服务或 rc.local 脚本,确保 监听数据库实例 随系统启动;对关键环境建议配置 备份与监控告警

0