在CentOS上安装Oracle数据库是一个较为复杂的过程,涉及到多个步骤和配置的调整,下面将详细介绍如何在CentOS 7系统上安装Oracle 11g R2数据库。
一、准备工作
1. 系统环境

操作系统:CentOS 7 64位最小化安装的虚拟机环境。
内存:建议不少于1GB,对于VMware虚拟机建议不少于1200MB。
硬盘空间:至少8GB的空闲硬盘空间。
2. 关闭防火墙和SELinux
- systemctl stop firewalld.service
- systemctl disable firewalld.service
- vim /etc/selinux/config
- 修改SELINUX=disabled
- setenforce 0
3. 安装图形界面(如果需要)
- yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
- systemctl setdefault graphical.target
- reboot
二、创建用户和组
- groupadd oinstall
- groupadd dba
- useradd g oinstall G dba m oracle
- passwd oracle
三、下载并解压Oracle安装包
将Oracle 11g R2的安装包上传到服务器,并解压到指定目录。

- unzip linux.x64_11gR2_database_1of2.zip d /data/src/
- unzip linux.x64_11gR2_database_2of2.zip d /data/src/
- chown R oracle:oinstall /data/src/
四、配置内核参数
编辑/etc/sysctl.conf
文件,添加以下内容:
- fs.aiomaxnr = 1048576
- fs.filemax = 6815744
- kernel.shmmni = 4096
- kernel.sem = 250 32000 100 128
- kernel.shmall = 2097152
- kernel.shmmax = 2147483648
- net.ipv4.ip_local_port_range = 9000 65500
- net.ipv4.icmp_echo_ignore_broadcasts = 1
- net.ipv4.conf.all.rp_filter = 1
- net.core.rmem_default = 262144
- net.core.rmem_max = 4194304
- net.core.wmem_default = 262144
- net.core.wmem_max = 1048576
使配置生效:
- sysctl p
五、安装必备软件包
- yum y install binutils compatlibcap1* compatlibstdc++* gcc* gccc++* glibc* glibcdevel* ksh* libaio* libaiodevel* libgcc* libstdc++* libstdc++devel* libXi* libXtst* make* sysstat* elfutils* unixODBC* unixODBCdevel* unzip lrzsz
六、创建Oracle相关目录并设置权限
- mkdir p /data/oracle
- mkdir p /data/inventory
- mkdir p /data/src
- chown R oracle:oinstall /data/oracle
- chown R oracle:oinstall /data/inventory
- chown R oracle:oinstall /data/src
七、配置用户环境变量
编辑~oracle/.bash_profile
文件,添加以下内容:
- export ORACLE_BASE=/data/oracle
- export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
- export ORACLE_SID=orcl
- export ORACLE_UNQNAME=orcl
- export PATH=$ORACLE_HOME/bin:$PATH
- export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
- export LANG=C
- export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
使环境变量生效:
- source ~/.bash_profile
八、开始安装Oracle数据库
切换到oracle用户,运行安装脚本:
- su oracle
- cd /data/src/database
- ./runInstaller
按照图形界面提示完成安装。

九、常见问题及解决方案
1. 中文乱码问题
新建一个目录,上传字体包zysong.ttf
到该目录,并设置系统变量为zh_CN.UTF8
。
- mkdir p /usr/share/fonts/zh_CN/TrueType
- cp zysong.ttf /usr/share/fonts/zh_CN/TrueType/
- chmod R 755 /usr/share/fonts/zh_CN/TrueType/zysong.ttf
- vim /etc/sysconfig/i18n
- 添加或修改内容为:ZONE="Asia/Shanghai"
2. SELinux导致的问题
如果遇到SELinux导致的问题,可以尝试临时关闭SELinux:
- setenforce 0
或者永久关闭SELinux:
- vim /etc/selinux/config
- 修改SELINUX=disabled
重启系统后生效。
十、FAQs相关问题与解答
Q1: 如何修改centos系统标识以兼容Oracle?
A1: 修改/etc/redhatrelease
文件,将CentOS Linux release
替换为RedHat
,将CentOS Linux release 7.4.1708 (Core)
改为RedHat
。
- vim /etc/redhatrelease
- 修改为 redhatrelease7serverrpms.go.rpm.rpm to centosrelease74.1708.el7.centos.x86_64
保存并退出编辑器。
Q2: 如何确保Oracle用户有足够的文件描述符限制?
A2: 编辑/etc/security/limits.conf
文件,添加以下内容:
- oracle soft nproc 2047
- oracle hard nproc 16384
- oracle soft nofile 1024
- oracle hard nofile 65536
这些设置将确保Oracle用户在启动时有足够的文件描述符限制。
通过以上步骤,你应该能够在CentOS 7上成功安装Oracle 11g R2数据库,如果在安装过程中遇到任何问题,可以参考上述常见问题的解决方案或查阅官方文档。