滚雪球学Oracle[2.2讲]:Oracle数据库软件的安装

全文目录:

前言

在上一篇文章【安装前的准备工作】中,我们讨论了Oracle数据库安装所需的硬件要求、操作系统配置、内存和磁盘规划等关键准备工作。这些准备工作为Oracle数据库的顺利安装和运行奠定了基础。了解如何配置内存、调整操作系统参数以及确保软件依赖是成功安装Oracle的第一步。

本期内容,我们将从准备阶段正式进入到Oracle数据库的安装环节。具体讲解如何通过静默安装方式实现无交互安装,并解析如何通过响应文件 配置自动化安装,适合在无图形界面的服务器环境中进行部署。此外,我们将深入探讨如何在同一台服务器上实现多版本Oracle数据库的共存 ,以及如何管理和优化Oracle Home的安装路径和环境变量配置。

最后,我们会为下期内容【Oracle Listener配置与管理】进行预告,帮助大家了解如何管理客户端与数据库的通信机制。


一、静默安装与响应文件配置

1.1 什么是静默安装?

静默安装是通过命令行运行的Oracle数据库安装方式,用户无需进行图形界面的交互操作。它依赖于预先配置好的响应文件来自动完成整个安装流程。这种安装方法特别适用于服务器环境,或需要批量部署多个实例的情况。

静默安装的优势:
  • 高效部署:静默安装减少了人工交互,适用于大规模批量安装或远程部署。
  • 自动化流程:通过预配置的响应文件,可以实现Oracle数据库安装的自动化,节省时间并减少人为错误。
  • 适用于无图形界面的服务器:对于没有GUI界面的服务器,静默安装是一种必要的安装方式。

1.2 响应文件的作用

响应文件(Response File)是静默安装中用于自动提供安装参数的文件。它允许用户在不参与安装过程中手动输入的情况下,完成数据库的安装。响应文件包含了安装过程中所需的所有选项配置,包括安装路径、Oracle Home、数据库版本、字符集、系统参数等。

响应文件的结构

响应文件的主要参数如下:

  • oracle.install.option:安装类型,例如"INSTALL_DB_SWONLY"表示仅安装数据库软件。
  • ORACLE_HOME:指定Oracle软件的安装路径。
  • ORACLE_BASE:基础目录,通常是安装路径的上级目录,Oracle的相关文件都存储在该路径下。
  • oracle.install.db.config.starterdb.dbname:设置数据库名称。
  • oracle.install.db.config.starterdb.password.ALL:为数据库的管理用户(如SYS和SYSTEM)设置密码。
  • oracle.install.db.config.starterdb.memoryOption:配置内存管理选项。
案例演示:静默安装Oracle数据库
  1. 准备响应文件

    Oracle的安装包中包含了默认的响应文件模板。通常位于/response目录下。复制该文件并根据需求修改:

    bash 复制代码
    cp /path/to/installer/response/db_install.rsp /home/oracle/db_install_custom.rsp
  2. 编辑响应文件

    使用文本编辑器打开db_install_custom.rsp,修改以下内容:

    bash 复制代码
    oracle.install.option=INSTALL_DB_SWONLY
    ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
    ORACLE_BASE=/u01/app/oracle
    oracle.install.db.config.starterdb.dbname=orcl
    oracle.install.db.config.starterdb.password.ALL=Oracle123
  3. 执行静默安装命令

    配置好响应文件后,通过命令行执行安装:

    bash 复制代码
    ./runInstaller -silent -responseFile /home/oracle/db_install_custom.rsp
  4. 监控安装进度

    安装过程中,可以通过查看日志文件来跟踪安装进度和检查是否有错误:

    bash 复制代码
    tail -f /u01/app/oraInventory/logs/installActions.log
  5. 安装后执行root脚本

    安装完成后,Oracle会要求以root用户身份执行脚本,完成相关权限配置:

    bash 复制代码
    su - root
    /u01/app/oracle/product/19.0.0/dbhome_1/root.sh

1.3 响应文件配置技巧

  • 模板文件的使用:Oracle提供的响应文件模板已经包含了常见配置,用户只需根据实际环境修改少量内容。
  • 批量安装:在多个服务器上进行批量安装时,可以将响应文件分发到各个服务器,减少重复配置。
  • 日志检查:静默安装没有图形界面反馈,因此实时查看安装日志非常重要,以便及时发现并解决问题。

1.4 静默安装常见问题及解决方案

  • 权限不足 :确保Oracle用户和root用户具备正确的文件和目录权限,尤其是安装路径和Oracle Inventory目录。
  • 依赖软件未安装 :在安装之前,检查操作系统是否已安装所需的软件包,可以使用包管理器如yumapt安装缺失的依赖。
  • 内存或硬盘不足:确保系统满足Oracle的硬件要求,尤其是内存和硬盘的空间配置。静默安装过程中无法直接显示此类错误,因此需要提前规划系统资源。

二、多版本Oracle的共存与管理

2.1 多版本共存的需求

在企业环境中,通常需要同时运行多个版本的Oracle数据库来满足不同应用程序的需求。例如,一些老旧应用程序只能兼容某个特定版本的Oracle,而新版本的应用程序则依赖更新的Oracle数据库版本。因此,多版本共存成为一种必然的选择。

多版本共存的应用场景:
  • 版本升级过渡期:为了确保数据库升级的平稳过渡,旧版本与新版本的共存可以避免突然切换导致的兼容性问题。
  • 开发测试环境:开发人员可能需要在同一台服务器上运行多个版本,以便测试不同版本的行为和特性。

2.2 多版本共存的挑战

虽然Oracle支持多版本共存,但同时管理多个版本的数据库会增加复杂性,尤其是在环境变量、监听器配置和端口管理方面。如果处理不当,可能会导致多个版本之间的冲突,影响数据库的正常运行。

2.3 安装路径与Oracle Home的最佳实践

为了在同一台服务器上安装和运行多个Oracle版本,合理配置ORACLE_HOME和安装路径至关重要。每个Oracle版本应有独立的安装路径,且应避免相互影响。

Oracle Home的最佳实践:
  • 独立的安装目录 :为每个Oracle版本指定独立的安装路径,避免文件冲突。例如,Oracle 12c安装在/u01/app/oracle/product/12.2.0/dbhome_1,而Oracle 19c则安装在/u01/app/oracle/product/19.0.0/dbhome_1
  • 环境变量管理 :通过不同的ORACLE_HOMEORACLE_SID环境变量,确保操作系统能够正确识别不同版本的Oracle。
  • 监听器端口配置:为每个版本的Oracle数据库监听器指定不同的端口,避免多个监听器同时占用同一个端口号(默认端口为1521)。
案例演示:多版本共存的安装
  1. 安装Oracle 12c

    为Oracle 12c配置单独的安装目录:

    bash 复制代码
    ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1

    设置环境变量并执行安装:

    bash 复制代码
    export ORACLE_HOME=/u01/app/oracle/product/12.2.0/dbhome_1
    ./runInstaller -silent -responseFile /home/oracle/db_install_12c.rsp
  2. 安装Oracle 19c

    为Oracle 19c配置独立的安装目录:

    bash 复制代码
    ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1

    安装并指定环境变量:

    bash 复制代码
    export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
    ./runInstaller -silent -responseFile /home/oracle/db_install_19c.rsp
  3. 配置监听器端口

    为每个Oracle版本配置不同的监听器端口。例如,Oracle 12c的监听器端口配置为1521,而Oracle 19c配置为1522:

    bash 复制代码
    # Oracle 12c
    LISTENER_PORT=1521
    
    # Oracle 19c
    LISTENER_PORT=1522
  4. 切换版本环境

    在不同的版本之间切换时,需要手动设置环境变量。例如,从Oracle 12c切换到Oracle 19c:

    bash 复制代码
    export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
    export PATH=$ORACLE_HOME/bin:$PATH
    export ORACLE_SID=orcl19

2.4 多版本管理的技巧

  • 环境隔离:通过虚拟机或容器技术,隔离不同的Oracle版本,进一步减少版本冲突的可能性。
  • 统一日志管理:将不同版本的Oracle日志文件存储在统一的目录中,以便于集中监控和管理。
  • 定期备份与恢复测试:在多版本共存的环境下,确保每个版本的数据库都经过定期备份,并且定期进行恢复测试,以确保在发生故障时能够快速恢复。

三、安装路径与Oracle Home的最佳实践

Oracle Home是Oracle软件的安装路径,通过合理规划和管理Oracle Home,可以提升系统的稳定性和维护效率。每个数据库实例运行时都依赖于ORACLE_HOME目录中的二进制文件和配置文件,因此确保Oracle Home的配置正确是数据库顺利运行的前提。

3.1 Oracle Home的结构

Oracle Home目录的典型结构包括以下几个关键子目录:

  • bin :存放Oracle的可执行文件,例如sqlplusexpdp等工具。
  • lib:存放Oracle的库文件。
  • dbs:存放数据库启动参数文件和密码文件。
  • network/admin:存放监听器配置文件和TNS配置文件。

3.2 Oracle Home配置的最佳实践

  • 避免与数据文件混合存放 :建议将Oracle Home与数据文件分开存放,避免升级或安装过程中对数据文件的影响。将ORACLE_HOMEORACLE_BASE的路径分别设定为独立的磁盘或文件系统。
  • 定期备份Oracle Home:尽管Oracle Home不直接存放用户数据,但定期备份Oracle Home可以在软件损坏或崩溃后快速恢复环境。
  • 使用标准化的目录结构:在多个环境中保持一致的Oracle Home目录结构,便于管理和故障排查。
案例演示:设置Oracle Home并验证
bash 复制代码
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH

# 验证Oracle Home设置
sqlplus / as sysdba

通过运行sqlplus可以验证是否成功配置Oracle Home。正确配置后,将进入SQL*Plus命令行界面。


四、总结与下期预告

通过本期内容的学习,我们详细介绍了Oracle数据库软件的安装流程,尤其是如何通过静默安装和响应文件实现无交互的自动化安装。此外,我们探讨了在同一台服务器上安装多个Oracle版本的最佳实践,并给出了合理管理Oracle Home的建议。对于企业级数据库环境,多版本共存和静默安装是提高效率和减少风险的重要手段。

在下一期内容中,我们将深入讲解【Oracle Listener配置与管理】,帮助大家更好地理解和优化数据库监听器,从而管理客户端与数据库实例之间的通信。

相关推荐
师太,答应老衲吧44 分钟前
SQL实战训练之,力扣:2020. 无流量的帐户数(递归)
数据库·sql·leetcode
Channing Lewis2 小时前
salesforce case可以新建一个roll up 字段,统计出这个case下的email数量吗
数据库·salesforce
毕业设计制作和分享3 小时前
ssm《数据库系统原理》课程平台的设计与实现+vue
前端·数据库·vue.js·oracle·mybatis
ketil273 小时前
Redis - String 字符串
数据库·redis·缓存
Hsu_kk4 小时前
MySQL 批量删除海量数据的几种方法
数据库·mysql
编程学无止境4 小时前
第02章 MySQL环境搭建
数据库·mysql
knight-n4 小时前
MYSQL库的操作
数据库·mysql
包饭厅咸鱼5 小时前
QML----复制指定下标的ListModel数据
开发语言·数据库
生命几十年3万天5 小时前
redis时间优化
数据库·redis·缓存
Elastic 中国社区官方博客5 小时前
释放专利力量:Patently 如何利用向量搜索和 NLP 简化协作
大数据·数据库·人工智能·elasticsearch·搜索引擎·自然语言处理