Oracle Database在CentOS系统中的配置步骤
cat /etc/redhat-release确认系统版本。free -h查看);磁盘根分区剩余≥15GB(可通过df -h查看);Swap空间根据内存调整(内存1-2GB时为内存的1.5倍,2-16GB时与内存大小一致,超过16GB时为16GB)。systemctl stop firewalld && systemctl disable firewalld);禁用SELinux(setenforce 0并修改/etc/selinux/config中SELINUX=disabled)。Oracle Database需要多个系统依赖包,推荐通过Oracle官方YUM源安装预安装包(自动解决依赖),再安装数据库主包:
oracle-database-preinstall-19c(适用于CentOS 7/8的EL7版本),上传至服务器(如/root目录)。rpm -ivh或yum localinstall安装(如rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm),该包会自动安装libnsl、libaio等依赖。compat-libstdc++-33),可通过yum install -y compat-libstdc++-33或从rpmfind.net下载安装。Oracle需要专用用户和组管理权限:
groupadd oinstall(所有者组)、groupadd dba(数据库管理员组)。useradd -g oinstall -G dba oracle(将oracle用户加入oinstall和dba组)。passwd oracle(为oracle用户设置强密码)。oracle-database-ee-19c)或ZIP格式安装包(如linuxx64_193000_db_home.zip),上传至服务器(如/root目录)。rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm安装。/u01/app/oracle/product/19.3.0/dbhome_1),并授权chown -R oracle:oinstall /u01/app/oracle、chmod -R 775 /u01/app/oracle。su - oracle(以oracle用户身份操作)。./runInstaller)。/u01/app/oracle/product/19.3.0/dbhome_1)。ORCLCDB)、SID(如ORCLCDB)、字符集(推荐AL32UTF8或ZHS16GBK)。安装完成后,需以root用户运行以下脚本:
/u01/app/oraInventory/orainstRoot.sh(配置库存目录权限)。/u01/app/oracle/product/19.3.0/dbhome_1/root.sh(配置系统环境)。dbca(图形化工具),选择“创建数据库”,按照提示配置实例名称、密码、存储路径等。sqlplus / as sysdba登录,执行CREATE DATABASE语句(需提前配置好监听器和参数文件)。vim /home/oracle/.bash_profile(oracle用户专属)。export ORACLE_BASE=/u01/app/oracle # Oracle基目录
export ORACLE_HOME=$ORACLE_BASE/product/19.3.0/dbhome_1 # Oracle主目录
export ORACLE_SID=ORCLCDB # 数据库实例名
export PATH=$PATH:$ORACLE_HOME/bin # 添加Oracle命令到PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib # 库文件路径
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8 # 字符集
source /home/oracle/.bash_profile。编辑/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。
编辑/etc/security/limits.conf,添加以下内容(限制oracle用户的资源使用):
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(使限制生效)。
lsnrctl start(启动监听服务,用于客户端连接)。sqlplus / as sysdba登录,执行startup(启动数据库实例)。systemctl enable oracle-database-preinstall-19c(预安装包自带的服务)或自定义脚本实现。sqlplus / as sysdba(以sysdba身份登录)。SELECT status FROM v$instance;(预期结果为OPEN,表示数据库已启动)。CREATE USER test IDENTIFIED BY 123456; GRANT CONNECT,RESOURCE TO test;(创建普通用户并授权,用于后续应用连接)。AL32UTF8(支持多语言)或ZHS16GBK(中文环境),避免乱码问题。CREATE_AS_CDB=false。CREATE TRIGGER open_all_pdbs AFTER STARTUP ON DATABASE BEGIN EXECUTE IMMEDIATE 'alter pluggable database all open'; END;)。以上步骤涵盖了Oracle Database在CentOS系统中的完整配置流程,可根据实际环境调整参数(如内存分配、字符集等)。