在CentOS 6.5上安装Oracle 11g数据库是一个复杂但必要的任务,特别是对于那些需要在无图形界面环境下工作的IT专业人员来说,本文将详细介绍如何在CentOS 6.5操作系统上进行Oracle 11g的安装步骤和配置要点。
一、准备工作
1. 系统环境准备

服务器环境:确保你的服务器运行的是CentOS 6.5 (Final) x86_64版本。
硬件要求:推荐至少2GB的内存和1.5倍于内存大小的交换空间,最低要求为2GB内存和1GB交换空间,建议至少20GB的磁盘空间以存放数据库文件。
2. 下载Oracle安装文件
下载链接:从Oracle官方网站下载Oracle 11g R2的安装包。
注意:选择与系统架构匹配的版本(32位或64位)。
3. 修改主机名和网络配置

修改主机名:将主机名改为oracledb。
- [root@oracledb ~]# sed i "s/HOSTNAME=localhost.localdomain/HOSTNAME=oracledb/" /etc/sysconfig/network
- [root@oracledb ~]# hostname oracledb
配置静态IP地址:编辑/etc/sysconfig/networkscripts/ifcfgeth0
文件,设置静态IP地址。
- DEVICE=eth0
- BOOTPROTO=static
- BROADCAST=192.168.1.255
- HWADDR=00:07:E9:05:E8:B4
- IPADDR=192.168.1.118
- NETMASK=255.255.255.0
- GATEWAY=192.168.1.1
- NETWORK=192.168.1.0
重启网络服务:执行命令service network restart
或/etc/init.d/network restart
。
4. 关闭防火墙和SELinux
关闭防火墙:执行命令systemctl stop firewalld
和systemctl disable firewalld.service
。
关闭SELinux:编辑/etc/selinux/config
文件,将SELINUX=enforcing
改为SELINUX=disabled
,然后执行命令setenforce 0
。

二、安装依赖包
为了确保Oracle 11g能够顺利安装并运行,需要安装一系列必要的RPM包,这些包包括编译器、标准库、Glibc及其开发工具等。
- [root@oracledb ~]# yum y install gcc gccc++ make binutils compatlibstdc++33 elfutilslibelf elfutilslibelfdevel glibc glibccommon glibcdevel libaio libaiodevel libstdc++ libstdc++devel unixODBC unixODBCdevel mpfr cpp ppl cloogppl gccc++ glibcheaders libgcc libstdc++devel make sysstat
三、创建用户和组
为了提高安全性,建议创建一个专门的Oracle用户和组。
- [root@oracledb ~]# groupadd g 200 oinstall
- [root@oracledb ~]# groupadd g 201 dba
- [root@oracledb ~]# useradd u 440 g oinstall G dba oracle
- [root@oracledb ~]# passwd oracle
四、上传并解压Oracle安装文件
使用SSH工具上传两个压缩包到服务器上的指定目录(例如/opt/software
),然后解压。
- [root@oracledb software]$ unzip V1753001_1of2.zip
- [root@oracledb software]$ unzip V1753001_2of2.zip
五、配置内核参数
为了优化Oracle的性能,需要调整一些内核参数,编辑/etc/sysctl.conf
文件,添加以下内容:
- fs.filemax = 6815744
- kernel.sem = 250 32000 100 128
- kernel.shmmni = 4096
- kernel.shmall = 1073741824
- kernel.shmamax = 20971520
- kernel.shmmin = 1
- kernel.shm_export_all_rw = 1
- 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
- net.ipv4.tcp_fin_timeout = 30
- net.ipv4.tcp_keepalive_time = 600
- net.ipv4.tcp_keepalive_probes = 5
- net.ipv4.tcp_max_orphans = 8192
- net.ipv4.tcp_max_syn_backlog = 8192
- net.ipv4.tcp_timestamps = 1
- net.ipv4.tcp_syncookies = 1
- vm.swappiness = 10
- vm.dirty_background_ratio = 5
- vm.dirty_ratio = 10
执行命令sysctl p
使改动立即生效。
六、配置环境变量
为了使Oracle软件能够在非root用户下运行,需要配置环境变量,编辑~oracle/.bash_profile
文件,添加以下内容:
- export ORACLE_BASE=/opt/software/database
- export ORACLE_HOME=$ORACLE_BASE
- export ORACLE_SID=orcl
- export PATH=$PATH:$ORACLE_HOME/bin
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
七、开始安装Oracle 11g
切换到oracle用户,执行安装脚本。
- [oracle@oracledb database]$ ./runInstaller
按照提示完成安装过程,安装完成后,可以通过SQL*Plus或其他客户端工具连接到Oracle数据库实例。
八、常见问题解答(FAQ)
Q1: 如果安装过程中出现权限问题怎么办?
A1: 确保所有操作都在root用户下完成,或者使用sudo提权,特别是在解压安装文件和修改配置文件时。
Q2: 如何确认Oracle服务是否启动成功?
A2: 可以使用以下命令查看Oracle服务状态:
- ps ef | grep pmon
如果看到相关进程,说明Oracle服务已经启动。
Q3: 如何更改Oracle数据库的监听端口?
A3: 编辑$ORACLE_HOME/network/admin/listener.ora
文件,找到类似以下内容:
- LISTENER =
- (DESCRIPTION_LIST =
- (DESCRIPTION =
- (ADDRESS = (PROTOCOL = TCP)(HOST = oracledb)(PORT = 1521))
- )
- )
将PORT
值改为所需的端口号,然后重新启动监听器服务:
- lsnrctl stop
- lsnrctl start
通过以上详细的步骤,你应该能够在CentOS 6.5上成功安装并配置Oracle 11g数据库,如果在安装过程中遇到任何问题,可以参考官方文档或在线社区寻求帮助,希望这篇文章对你有所帮助!