centos 6.7安装oracle的完整教程在哪里能找到?

在经典的 CentOS 6.7 系统上部署 Oracle 数据库是一项兼具挑战性与实用价值的任务,尽管 CentOS 6.7 和相应版本的 Oracle(如 11g R2)已不是最新技术栈,但其在许多企业级应用中依然扮演着稳定可靠的角色,本文旨在提供一个清晰、详尽的指南,帮助您顺利完成整个安装与配置过程,确保数据库系统能够高效、安全地运行。

centos 6.7安装oracle的完整教程在哪里能找到?

系统环境准备与硬件要求

在开始安装之前,充分的准备工作是成功的关键,这包括确认硬件资源、安装必要的依赖包以及进行系统级配置。

硬件资源检查

Oracle 数据库对系统资源有明确的要求,不满足这些要求往往会导致安装失败或运行性能低下,以下是基本的硬件要求参考:

项目 最低要求 推荐配置
物理内存 (RAM) 1 GB 4 GB 或以上
交换空间 5 倍物理内存或 2 GB 2 倍物理内存
磁盘空间 /tmp 至少 1 GB,软件安装目录至少 5.5 GB,数据文件至少 10 GB 软件目录 20 GB,数据文件根据业务需求预留
处理器 (CPU) 64 位 多核处理器

您可以使用 free -mdf -h 命令来检查当前的内存和磁盘空间。

安装必要的软件包

Oracle 安装程序依赖一系列系统库和开发工具,在 CentOS 6.7 中,可以通过 yum 命令方便地安装它们,请以 root 用户执行以下命令:

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

创建 Oracle 用户和用户组

出于安全考虑,Oracle 不应使用 root 用户运行,我们需要创建专门的用户和组。

groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle # 为 oracle 用户设置密码

配置内核参数

Oracle 需要调整内核参数以优化共享内存、信号量等资源,编辑 /etc/sysctl.conf 文件,在文件末尾添加以下内容:

fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104 # 通常设为物理内存的一半或更多
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
net.ipv4.ip_local_port_range = 9000 65500

保存后,执行 sysctl -p 使配置立即生效。

设置 Oracle 用户的 Shell 限制

编辑 /etc/security/limits.conf 文件,在末尾添加:

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240

编辑 /etc/pam.d/login 文件,确保包含以下行(通常已默认存在):

centos 6.7安装oracle的完整教程在哪里能找到?

session required pam_limits.so

Oracle 软件安装过程

准备工作就绪后,我们就可以开始图形化的安装过程了。

解压安装文件

将从 Oracle 官网下载的数据库安装包(linux.x64_11gR2_database_1of2.ziplinux.x64_11gR2_database_2of2.zip)上传到服务器,并解压。

unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip

解压后会生成一个 database 目录。

配置环境变量并启动安装程序

切换到 oracle 用户,并设置临时环境变量,为了永久生效,可以将这些变量添加到 oracle 用户的 .bash_profile 文件中。

su - oracle
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH

进入 database 目录,执行安装脚本:

./runInstaller

图形化安装界面配置

如果您的服务器支持图形界面,将会弹出 Oracle Universal Installer (OUI) 窗口,请按以下步骤操作:

  • 配置安全更新:取消勾选“我希望通过 My Oracle Support 接收安全更新”,点击“下一步”。
  • 安装选项:选择“创建和配置数据库”,点击“下一步”。
  • 系统类:选择“服务器类”,点击“下一步”。
  • 节点安装:选择“单实例数据库安装”,点击“下一步”。
  • 安装类型:选择“典型安装”,这是最简单的方式。
  • 典型安装配置
    • Oracle 基目录:设置为之前创建的 /u01/app/oracle
    • 软件位置:通常会自动填充为 $ORACLE_BASE/product/11.2.0/dbhome_1
    • 存储类型:选择“文件系统”。
    • 数据库文件位置:指定一个数据文件存放目录,如 /u01/app/oracle/oradata
    • 字符集:选择“Unicode标准UTF-8 AL32UTF8”,以支持多语言。
    • 全局数据库名SID:设置为 orcl(或您喜欢的名称)。
    • 为管理员账户(SYS, SYSTEM, SYSMAN, DBSNMP)设置统一的密码。
  • 执行先决条件检查:OUI 会自动检查系统是否满足所有安装条件,如果检查失败,请根据提示修复问题,在确保核心参数正确后,可以勾选“忽略全部”,继续安装。
  • 概要:确认安装信息无误后,点击“完成”开始安装。

安装过程中,系统会提示您需要以 root 用户身份执行两个脚本,请打开一个新的终端,切换到 root 用户,并按提示路径执行:

su - root
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/11.2.0/dbhome_1/root.sh

执行完毕后,回到安装界面点击“确定”,安装完成后,OUI 会显示数据库管理界面的访问地址。

安装后配置与验证

安装完成后,还需要进行一些后续配置以确保数据库能够正常启动和远程访问。

配置监听器

监听器是 Oracle 接收远程连接请求的进程,以 oracle 用户执行:

centos 6.7安装oracle的完整教程在哪里能找到?

netca

在图形界面中,选择“监听程序配置” -> “添加” -> “监听程序名称”(默认 LISTENER) -> “协议”(TCP) -> “端口”(默认 1521),完成后启动监听器。

设置数据库开机自启动

编辑 /etc/oratab 文件,将数据库实例 orcl 对应的最后一行的 N 改为 Y

orcl:/u01/app/oracle/product/11.2.0/dbhome_1:Y

/etc/init.d/ 目录下创建一个启动脚本,oracle,并添加以下内容:

#!/bin/bash
# oracle: Start/Stop Oracle Database 11g R2
#
# chkconfig: 345 90 10
# description: The Oracle Database is an Object-Relational Database Management System.
#
. /etc/rc.d/init.d/functions
ORACLE_HOME="/u01/app/oracle/product/11.2.0/dbhome_1"
ORACLE_OWNER="oracle"
case "$1" in
'start')
    echo -n $"Starting Oracle Database:"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbstart $ORACLE_HOME"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl start dbconsole"
    touch /var/lock/subsys/oracle
    echo "OK"
    ;;
'stop')
    echo -n $"Shutting down Oracle Database:"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/emctl stop dbconsole"
    su - $ORACLE_OWNER -c "$ORACLE_HOME/bin/dbshut $ORACLE_HOME"
    rm -f /var/lock/subsys/oracle
    echo "OK"
    ;;
'restart')
    $0 stop
    $0 start
    ;;
*)
    echo $"Usage: $0 {start|stop|restart}"
    exit 1
esac
exit 0

赋予脚本执行权限并添加到开机启动项:

chmod +x /etc/init.d/oracle
chkconfig --add oracle
chkconfig oracle on

验证安装

oracle 用户登录,使用 sqlplus 连接数据库:

sqlplus / as sysdba
SQL> select instance_name, status from v$instance;

如果能看到实例名和状态为 OPEN,则说明数据库已成功安装并运行。


相关问答 (FAQs)

问题1:在安装过程中,先决条件检查提示“Swap space”不足,但我无法增加物理交换分区,该如何解决?

解答: 这是一个常见问题,您可以通过创建一个交换文件来临时或永久地增加交换空间。

  1. 创建交换文件:使用 dd 命令创建一个指定大小的文件,创建一个 4GB 的交换文件:
    dd if=/dev/zero of=/swapfile bs=1024 count=4194304
  2. 格式化为交换空间
    mkswap /swapfile
  3. 启用交换文件
    swapon /swapfile
  4. 验证:执行 free -mswapon -s 查看交换空间是否已增加。
  5. 永久生效:编辑 /etc/fstab 文件,在末尾添加一行,使系统重启后自动挂载:
    /swapfile swap swap defaults 0 0
    完成这些步骤后,重新运行 Oracle 安装程序,先决条件检查应该就能通过了。

问题2:数据库安装成功,本地可以连接,但从其他客户端机器无法连接到数据库,提示“ORA-12170: TNS:Connect timeout occurred”,这是什么原因?

解答: 这通常是防火墙阻止了连接,Oracle 数据库默认使用 1521 端口进行通信,在 CentOS 6.7 中,防火墙服务是 iptables,您需要开放这个端口。

  1. 添加防火墙规则:以 root 用户执行以下命令,允许 TCP 1521 端口的入站连接:
    iptables -I INPUT -p tcp --dport 1521 -j ACCEPT
  2. 保存规则:添加的规则在重启后会失效,需要保存配置:
    /etc/init.d/iptables save
  3. 重启防火墙
    service iptables restart
    执行完以上操作后,客户端应该就能成功连接到数据库了,如果仍然无法连接,请检查客户端和服务器的网络连通性(如 ping 命令)以及监听器是否在服务器上正常运行(lsnrctl status)。

【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!

(0)
热舞的头像热舞
上一篇 2025-10-14 09:29
下一篇 2025-10-14 09:32

相关推荐

发表回复

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

联系我们

QQ-14239236

在线咨询: QQ交谈

邮件:asy@cxas.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信