- 首页 >
- 问答 >
-
云计算 >
- centos oracle配置有哪些要点
centos oracle配置有哪些要点
小樊
45
2025-11-27 18:53:12
CentOS 上 Oracle 配置要点
一 系统环境与资源规划
- 操作系统与版本:建议使用 CentOS 7/8,内存至少 2 GB(推荐 4 GB+),安装与数据目录预留 10–20 GB+ 空间。Swap 建议:1–2 GB 内存配 1.5×,2–16 GB 配 1×,>16 GB 配 16 GB。完成后先执行 yum update -y 更新系统。
- 主机名与解析:设置稳定主机名(如 db),并在 /etc/hosts 中确保 FQDN 与 IP 正确解析,避免安装/监听异常。
- 防火墙与 SELinux:测试环境可临时关闭(生产环境不建议):
systemctl stop firewalld && systemctl disable firewalld,setenforce 0 并将 /etc/selinux/config 的 SELINUX=permissive/disabled。
- 依赖包:安装常见编译与网络库,如 binutils、gcc、gcc-c++、glibc-devel、ksh、libaio、libaio-devel、libstdc+±devel、libXi、libXtst、make、sysstat、unixODBC、unzip 等,确保安装器与工具链可用。
二 用户目录与内核参数
- 专用用户与组:创建 oinstall、dba 组与 oracle 用户,设置强口令并加入 sudo 权限(按需)。
- 目录与权限:建议安装基目录 /u01/app/oracle,数据目录 /u01/app/oracle/oradata,执行
chown -R oracle:oinstall /u01 && chmod -R 775 /u01。
- 内核参数(/etc/sysctl.conf):设置共享内存、信号量、文件句柄、网络端口与缓冲区等,典型值如下(按内存与负载微调):
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295(或按物理内存设置,如 2–8 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
在 /etc/pam.d/login 加入 session required pam_limits.so,必要时在 /etc/profile 为 oracle 用户补充 ulimit -u/-n 设置。
三 Oracle 软件安装与网络配置
- 安装介质与响应文件:从 Oracle 官网获取 Linux x86_64 安装包(如 19c),上传至 /u01/app/oracle 并解压;或使用 oracle-database-preinstall-19c 元包简化依赖与内核检查。
- 图形/静默安装:以 oracle 用户执行
./runInstaller(图形界面)或使用 -silent -responseFile 静默安装;安装过程中按向导设置 ORACLE_BASE、ORACLE_HOME、Inventory 等。
- 环境变量(~oracle/.bashrc 或 .bash_profile):
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/dbhome_1(版本号按实际)
export ORACLE_SID=orcl
export ORACLE_UNQNAME=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
- 监听与客户端解析:使用 netca 配置监听器(默认端口 1521),按需编辑 $ORACLE_HOME/network/admin/listener.ora 与 tnsnames.ora,确保 GLOBAL_DBNAME/SID 与客户端一致。
四 创建数据库实例与自启
- 实例创建:使用 dbca 图形或静默方式创建数据库(示例字符集 AL32UTF8):
dbca -silent -createDatabase -templateName General_Purpose.dbc -gdbname orcl -sid orcl -characterSet AL32UTF8
- 启动与验证:
sqlplus / as sysdba → startup(若已启动可 select status from v$instance; 查看)
- 监听状态:
lsnrctl status;必要时 lsnrctl start
- 开机自启(两种常见方式):
- 使用 systemd(若已安装 Oracle 提供的 rpm 服务单元):
systemctl enable --now oracle-database-ee-19c
- 使用 /etc/oratab + dbshut/dbstart:将 orcl:/u01/app/oracle/product/19.0.0/dbhome_1:N 改为 Y,并在 /etc/rc.local 或自定义 systemd unit 中调用
dbstart $ORACLE_HOME。
五 安全与运维要点
- 最小暴露面:仅开放 1521(监听)与相关管理端口,限制来源网段;生产环境不建议长期关闭 firewalld/SELinux,可改为精细化策略。
- 字符集与语言:建议数据库字符集 AL32UTF8,客户端 NLS_LANG=AMERICAN_AMERICA.AL32UTF8,避免跨平台乱码。
- 日志与诊断:关注 $ORACLE_BASE/diag/(ADR),以及 alert.log、listener.log;使用 DDM/ADDM 与等待事件分析性能瓶颈。
- 备份与恢复:上线前建立 RMAN 备份策略(全备+归档日志),定期验证可恢复性;关键库建议配置 Data Guard。