Linux系统详细安装Oracle 11g的具体操作步骤是怎样的?

在Linux系统上安装Oracle 11g数据库需要经过详细的环境准备、依赖安装、参数配置及安装执行等步骤,以下以CentOS 7.x为例,详细说明安装过程。

linux如何安装oracle11g

环境准备

操作系统要求

Oracle 11g官方支持Red Hat Enterprise Linux 5/6/7、CentOS 5/6/7等64位系统,确保系统为最小化安装+开发工具包,关闭防火墙和SELinux(避免权限冲突):

systemctl stop firewalld
systemctl disable firewalld
setenforce 0  # 临时关闭,永久修改需编辑/etc/selinux/config将SELINUX=disabled

硬件要求

  • 内存:至少1GB(推荐2GB以上),可通过free -m检查
  • 磁盘空间:至少5GB可用空间(数据库软件安装约3.5GB,数据文件需额外空间)
  • Swap空间:内存≤2GB时,Swap=2×内存;内存>2GB时,Swap=内存+2GB(可通过free -m查看,不足时使用dd if=/dev/zero of=/swapfile bs=1M count=2048 && mkswap /swapfile && swapon /swapfile临时增加)

主机名配置

确保主机名解析正确,编辑/etc/hosts添加:

168.1.100  localhost.localdomain  localhost  # 192.168.1.100为实际IP

安装依赖包

Oracle 11g安装需要大量基础依赖包,使用yum安装:

yum install -y binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel

以下为关键依赖包作用说明(表格形式):

包名 作用
binutils 二进制工具集,用于链接和编译
compat-libstdc++-33 兼容旧版C++库
elfutils-libelf ELF文件处理库
gcc-c++ C++编译器
glibc-devel GNU C库开发文件
libaio-devel 异步I/O开发库
make 构建工具
unixODBC ODBC驱动管理器

配置内核参数

编辑/etc/sysctl.conf,添加以下参数(优化系统资源限制):

fs.aio-max-nr = 1048576
fs.file-max = 68719476736
kernel.shmall = 4294967296
kernel.shmmax = 68719476736
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使参数生效,检查参数是否生效:sysctl -a | grep "fs.aio-max-nr"

创建Oracle用户和目录

创建用户和组

groupadd oinstall  # 安装组
groupadd dba      # 管理组
useradd -g oinstall -G dba oracle  # 创建oracle用户,加入oinstall和dba组
passwd oracle     # 设置oracle用户密码

创建安装目录

mkdir -p /oracle/app/oracle/product/11.2.0/dbhome_1  # 软件安装目录
mkdir -p /oracle/oradata  # 数据文件目录
mkdir -p /oracle/inventory  # 安装日志目录
chown -R oracle:oinstall /oracle  # 递归修改目录所有者
chmod -R 775 /oracle  # 设置权限

配置Oracle用户环境变量

切换至oracle用户:su - oracle,编辑.bash_profile文件:

linux如何安装oracle11g

export ORACLE_BASE=/oracle/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl  # 实例名,可根据需求修改
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8  # 字符集,建议使用AL32UTF8

执行source .bash_profile使环境变量生效,验证:echo $ORACLE_HOME

上传并解压安装介质

将Oracle 11g安装介质(linux_11gR2_database_1of2.ziplinux_11gR2_database_2of2.zip)上传至Linux系统,建议上传至/opt目录:

cd /opt
unzip linux_11gR2_database_1of2.zip
unzip linux_11gR2_database_2of2.zip
chown -R oracle:oinstall database  # 修改安装目录所有者

执行安装

进入安装目录并运行安装程序

cd /opt/database
./runInstaller  # 需在图形界面执行,若为无图形系统,需配置X11转发(ssh -X oracle@localhost)

图形界面安装步骤

  • “选择安装选项”:选择“创建和配置数据库”,点击“下一步”

  • “系统类型”:选择“服务器类”,点击“下一步”

  • “网格安装选项”:选择“单实例数据库安装”,点击“下一步”

  • “安装类型”:选择“典型安装”,点击“下一步”

  • “典型安装配置”

    linux如何安装oracle11g

    • “Oracle基目录”:自动识别/oracle/app/oracle
    • “Oracle主目录位置”:自动识别/oracle/app/oracle/product/11.2.0/dbhome_1
    • “全局数据库名”:输入orcl(与ORACLE_SID一致)
    • “管理员密码”:设置sys、system用户密码(需包含字母、数字、特殊字符)
    • “创建数据库示例”:勾选
      点击“下一步”
  • “安装先决条件检查”:系统自动检查依赖和环境,若报错根据提示安装缺失包(如缺少libXext则执行yum install libXext.x86_64),检查通过后点击“下一步”
    **:确认安装信息,点击“完成”开始安装

执行root脚本

安装过程中会弹出终端提示,要求以root身份执行两个脚本:

# 第一个脚本(root.sh)
/oracle/app/oraInventory/orainstRoot.sh
# 第二个脚本(netca.sh)
/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh

执行完成后,点击“返回”继续安装,直至安装完成。

验证安装

启动数据库

sqlplus / as sysdba  # 以sysdba身份登录
SQL> startup  # 启动数据库
SQL> exit  # 退出

检查数据库状态

lsnrctl status  # 检查监听器状态(默认端口1521)
ps -ef | grep ora_  # 检查Oracle进程

若看到LISTENERPMONSMON等进程,且监听器状态为“READY”,则安装成功。

相关问答FAQs

问题1:安装过程中报错“PRVF-4608”无法检查系统要求怎么办?
解答:此错误通常因系统依赖包缺失或内核参数未生效导致,可按以下步骤解决:

  1. 检查依赖包是否完整:rpm -q binutils compat-libstdc++-33 gcc-c++ glibc-devel ksh libaio-devel libstdc++-devel make,缺失则通过yum安装;
  2. 确认内核参数是否生效:sysctl -a | grep "fs.aio-max-nr",若未生效,检查/etc/sysctl.conf文件格式是否正确,执行sysctl -p重新加载;
  3. 若仍报错,可临时禁用依赖检查:在安装界面点击“下一步”时,按“Ctrl+Shift”跳过检查(不推荐,仅用于测试环境)。

问题2:安装完成后如何启动和停止Oracle数据库?
解答:Oracle数据库可通过命令行或服务管理工具启动/停止,以下是常用命令:

  • 启动数据库
    sqlplus / as sysdba  # 登录
    SQL> startup  # 启动实例
    SQL> exit  # 退出
    lsnrctl start  # 启动监听器(若未自动启动)
  • 停止数据库
    sqlplus / as sysdba
    SQL> shutdown immediate  # 立即停止(推荐)
    SQL> exit
    lsnrctl stop  # 停止监听器
  • 开机自启配置:编辑/etc/oratab文件,将orcl:/oracle/app/oracle/product/11.2.0/dbhome_1:N改为orcl:/oracle/app/oracle/product/11.2.0/dbhome_1:Y,然后执行systemctl enable oracle(需提前创建oracle.service服务文件)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/31681.html

(0)
酷番叔酷番叔
上一篇 2025年9月28日 08:16
下一篇 2025年9月28日 08:41

相关推荐

  • 如何快速确认系统并进行基础操作?

    在开始使用前,请务必确认您的系统版本,主流 Linux 发行版(如 Red Hat Enterprise Linux / CentOS)的 1 版本发布于 2015 年,目前已结束生命周期(EOL),不再获得安全更新和技术支持,强烈建议用户升级至受支持的版本(如 RHEL/CentOS 8+ 或 Ubuntu……

    2025年7月4日
    7100
  • linux如何输出

    Linux中,可使用echo [内容]命令将信息输出到终端,也可重定向输出到文件,如`echo “test” ˃ file.

    2025年8月13日
    5000
  • Linux删除设备管理有何影响?

    在Linux中,删除设备管理指当设备被移除时,系统自动执行的操作:卸载相关内核驱动模块、触发udev规则处理移除事件、并移除/dev下的设备节点文件,确保系统资源被正确释放。

    2025年7月26日
    6800
  • 禅道Linux启动只需几步?

    禅道是一款开源的项目管理软件,支持敏捷开发、测试管理和DevOps流程,在Linux服务器上部署禅道,可充分发挥其稳定性和高性能优势,以下是经过验证的详细启动流程(基于官方文档和最佳实践):环境准备(必需依赖)系统要求操作系统:CentOS 7+/Ubuntu 18.04+(推荐)运行环境:PHP 7.2-8……

    2025年6月28日
    7000
  • Linux下npm怎么用?新手入门详细操作指南

    在Linux系统中,npm(Node Package Manager)是Node.js的包管理工具,用于安装、更新、卸载Node.js模块及管理项目依赖,以下是Linux下使用npm的详细步骤和操作指南,安装Node.js和npmnpm随Node.js一起安装,因此需先安装Node.js,不同Linux发行版的……

    2025年10月3日
    2600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信