Linux环境下安装Oracle 12c数据库的详细指南
在Linux系统中安装Oracle 12c数据库需要严谨的步骤和细致的配置,本文将基于常见的CentOS 7.x操作系统,以Oracle 12c Release 1 (12.1.0.2)版本为例,从环境准备到安装验证的全过程进行详细说明。

环境准备与系统要求
在安装前,需确保系统满足Oracle 12c的最低硬件和软件要求,硬件方面,建议至少2GB内存(推荐4GB以上)、20GB可用磁盘空间;软件方面,需安装CentOS 7.x minimal版,并关闭SELinux和防火墙(或配置相应端口例外)。
-
关闭SELinux和防火墙
执行以下命令临时关闭SELinux:sudo setenforce 0
编辑
/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=disabled以永久生效,关闭防火墙:sudo systemctl stop firewalld sudo systemctl disable firewalld
-
安装必要依赖包
Oracle 12c依赖多个系统库,需通过yum安装:sudo yum install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel libXi libXtst make sysstat unixODBC unixODBC-devel
创建Oracle用户与安装目录
Oracle数据库需专用用户和安装目录,建议遵循最佳实践创建oinstall和dba用户组,以及oracle用户。
-
创建用户和组
sudo groupadd oinstall sudo groupadd dba sudo useradd -g oinstall -G dba oracle sudo passwd oracle
-
创建安装目录并授权
sudo mkdir -p /u01/app/oracle/product/12.1.0/dbhome_1 sudo chown -R oracle:oinstall /u01 sudo chmod -R 775 /u01
配置系统内核参数与资源限制
Oracle对系统参数有明确要求,需通过修改/etc/sysctl.conf和/etc/security/limits.conf文件进行优化。

-
修改内核参数
编辑/etc/sysctl.conf,添加以下内容:fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmax = 4398046511104 kernel.shmall = 4194304 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 fs.aio-max-nr = 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
安装Oracle 12c软件
-
上传安装介质并解压
将Oracle 12c安装包(如linuxamd64_12102_database_1of2.zip和linuxamd64_12102_database_2of2.zip)上传至服务器的/tmp目录,使用oracle用户解压:cd /tmp unzip linuxamd64_12102_database_1of2.zip unzip linuxamd64_12102_database_2of2.zip
解压后进入
database目录,执行安装脚本:./runInstaller
-
图形化安装界面配置
若为远程服务器,需通过X11转发或VNC工具访问图形界面,安装过程中选择“创建和配置数据库”,安装类型选择“高级安装”。 -
配置数据库信息
- 安装类型:选择“高级安装”以自定义配置。
- 语言:根据需求选择“简体中文”和“英语”。
- 数据库版本:选择“企业版”。
- 安装路径:确认默认路径
/u01/app/oracle/product/12.1.0/dbhome_1。 - 配置类型:选择“通用”或“事务处理”。
- 内存分配:根据系统资源调整SGA和PGA大小。
- 字符集:建议选择AL32UTF8。
- 管理选项:选择“使用Oracle管理文件(OMF)”。
-
执行root脚本
安装完成后,根据提示以root用户执行两个脚本:
sudo /u01/app/oraInventory/orainstRoot.sh sudo /u01/app/oracle/product/12.1.0/dbhome_1/root.sh
验证安装与连接测试
-
检查监听状态
lsnrctl status
若显示“Listener has not been started”,需先启动监听:
lsnrctl start。 -
登录数据库
使用SQL*Plus连接:sqlplus / as sysdba
执行
SELECT * FROM V$VERSION;验证版本信息。 -
配置环境变量
编辑oracle用户的.bash_profile,添加:export ORACLE_HOME=/u01/app/oracle/product/12.1.0/dbhome_1 export ORACLE_SID=orcl export PATH=$PATH:$ORACLE_HOME/bin
执行
source .bash_profile使配置生效。
常见问题与注意事项
- 安装失败:检查依赖包是否完整,确保磁盘空间充足。
- 监听启动失败:确认
/etc/hosts中localhost配置正确,避免IP与主机名映射问题。 - 内存不足:调整
/etc/sysctl.conf中的shmmax参数,确保共享内存足够。
通过以上步骤,即可在Linux系统上成功安装并运行Oracle 12c数据库,安装后建议定期备份数据,并根据业务需求优化性能参数。



















