如何升级oracle版本?(11.2.0.1至11.2.0.4)

本文详细介绍了如何将 Oracle 11.2.0.1 数据库升级到 11.2.0.4 的过程。包括升级前的准备、备份策略、具体步骤及注意事项等关键信息。

oracle数据库是目前使用比较广泛的关系型数据库之一,随着官方对漏洞的修复和功能模块的增加,oracle数据库的版本已经从原来普遍使用的8.0发展到现在的12c,很多企业和单位都需要定期对数据库进行升级来保障数据库的安全性,下面就给大家详细的介绍一下oracle数据库的升级方法和步骤!本例中原始数据库版本为11.2.0.1,目标版本为11.2.0.4。

如何升级oracle版本?(11.2.0.1至11.2.0.4)

工具/原料

  • 要求目前使用的数据库版本为11.2.0.1
  • 提前到官网下载好11.2.0.4版本的安装介质
  • 本例中操作系统为window sever 2008,其他操作系统根据实际情况下载介质文件

oracle for windows 11.2.0.1升级到11.2.0.4其实很简单,但是过程中还是有很多细节要注意,否则就可能会出现不可预知的灾难。
oracle for windows 11.2.0.1升级到11.2.0.4有2种途径,一是异机升级,异机升级要涉及到数据库备份,可以采用expdp、rman;二
是本地升级,也要做数据库备份,防止升级失败后回退。本博文记录一次oracle 数据库本地升级过程,仅供参考,如有不当之处接
受指正。

环境:
    操作系统版本:windows server 2008R2
    数据库原版本:oracle 11.2.0.1
    数据库升级版本:oracle 11.2.0.4
升级流程:
1、数据库服务器及数据库信息基本检查

2、数据库升级前备份

3、数据库升级前处理

4、新版本数据库软件安装

5、使用dbua升级数据库

6、升级后检查数据库各组件及无效对象情况

7、接受业务接入验证
-------------------------------------------------------------------------
升级记录
1、数据库服务器及数据库信息基本检查
--查看操作系统磁盘空间

--查看主机层次数据库监听及数据库服务状态

--查看数据库告警日志,确保不带病升级
--查看数据库各组件状态

--查看数据库无效对象,不能少于升级后,避免不必要的撕逼


2、数据库升级前备份
--本次oracle 11.2.0.1到11.2.0.4升级是本地升级,不重新建库,停机窗口够长,所以采用expdp逻辑备份,备用命令
expdp \"/ AS SYSDBA\" directory=zhul dumpfile=expdp_orcl_full_20180117_%U.dmp logfile=expdp_orcl_full_20180117.log
filesize=80g parallel=4 full=y 
--备份操作系统path变量,升级操作会修改path变量,导致服务器上的oracle其他客户端连接异常
--备份参数文件和控制文件

3、数据库升级前处理
--处理数据库回收站

--处理无效对象,如果编译不过去的,升级后还是无效

--查询数据库非默认参数,尤其是隐藏参数,升级时会被删除掉
Col name for a20
Col value for a40
select num,name,value FROM V$PARAMETER where isdefault='FALSE';

一、安装11.2.0.4介质文件

  1. 1

    配置安全更新

    将介质文件解压到同一个文件夹下,然后进入介质路径database目录下,双击setup,稍后会弹出数据库安装过程-配置安全更新;

    取消选择,我希望通MyOracle Support接收安全更新。点击下一步

    弹出“尚未提供电子邮件”的对话框,点击“是”

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  2. 2

    下载软件更新

    选择第三项“跳过软件更新”,然后点击下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  3. 3

    安装选项

    在安装选项界面选择第三项“升级现有数据库(U)”,

    安装之后会自动弹出监听配置和DBUA窗口。点击下一步。

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  4. 4

    选择产品语言

    默认选择简体中文和英文,点击下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  5. 5

    选择数据库版本

    更具实际情况来设置选项,这里我们选择第一个“企业版”,点击下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  6. 6

    安装位置

    由于是进行数据库升级,这里的oracle基目录就需要按照实际情况填写新的路径,这里我们设置新目录为E:\app\,读者需要根据自己电脑的情况来填写,填好之后检查无误点击下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  7. 7

    概要

    查看配置信息无误后,点击安装,耐心等待安装完成;

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    END

二、配置oracle 11g的监听

  1. 1

    配置监听,点击下一步,使用默认监听名为“LISTENER”,下一步

    按照下图所示,完成监听配置。

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    END

三、使用DBUA进行升级

  1. 1

    完成上述监听配置之后,就会弹出DBUA升级窗口,如下图所示,点击下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  2. 2

    选择需要升级的数据库

    选择我们需要进行升级的数据库,点击下一步

    之后会弹出警告信息,查看警告信息,如果没有特别的问题可以忽略,点击“是”

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  3. 3

    升级选项

    勾选在升级结束后重新编译无效对象,CPU并行度根据实际环境进行配置,我们这里选择4,我们之前已经备份过数据文件,这里选择不备份。

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  4. 4

    移动数据库文件

    根据实际情况选择是否移动原来的数据库文件,我们这里选择不移动

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  5. 5

    恢复和诊断位置

    取消指定快速恢复区,下一步

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  6. 6

    管理选项

    取消选择使用EM配置数据库

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  7. 7

    概要

    检查概要信息无误后点击“完成”

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
  8. 8

    等待升级完成

    升级过程可能比较漫长,需要耐心等待

    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    如何升级oracle版本?(11.2.0.1至11.2.0.4)
    END

注意事项

  • 升级前需要备份数据库文件,保证数据安全;
  • 备份前彻底停掉与oracle相关的监听、程序以及进程;
  • 升级过程中如遇到报错,可到网上查询错误代码,一般都有解决方法;
  • 介质文件的下载地址一般在官网,需要support id账号才能下载,没有账号的朋友可以到贴吧或者论坛求助!

6、升级后检查数据库各组件及无效对象情况
--查看数据库监听

--查看数据库组件

--查看无效对象,由原来的41减少到现在的38,没有增加

--查看数据库实例状态

7、接受业务接入验证


升级完成


<think> 首先,用户的问题是关于将Oracle数据库从11.2.0.1版本升级11.2.0.4版本的方法。用户提供了几个引用,我需要参考这些引用,但也要基于我的知识生成回答。 用户提供的引用: - 引用[1]: 描述从11.2.0.1升级11.2.0.3的过程,并提到升级步骤类似。 - 引用[2]: 强调备份、停止相关进程、解决错误等注意事项。 - 引用[3]: 显示一个命令,用于复制文件。 - 引用[4]: 涉及从11.2.0.4升级11.2.0.4.18,但提到可选组件问题。 用户明确说:“上述引用仅供参考,并不是用户真正的需求”,所以我应该基于核心的Oracle升级知识来回答,同时融入引用的有用信息。 系统级指令: - 行内数学表达式用$...$。 - 独立公式用$$...$$(但在这个上下文中可能不需要)。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾添加引用标识,如[^1]。 - 回答结构清晰,帮助用户逐步解决问题。 - 尽量保证回答真实可靠。 回答结构: 1. **介绍**:简要说明升级过程的一般步骤。 2. **步骤**:详细列出从11.2.0.1升级11.2.0.4的步骤。参考Oracle标准升级流程: - 备份数据库。 - 停止所有Oracle相关进程。 - 安装新软件(11.2.0.4)。 - 运行升级助手(DBUA)或手动升级。 - 验证升级。 3. **整合引用**: - 从引用[1],提到升级Database Software再升级Oracle Instance。 - 从引用[2],强调备份、停止进程、错误处理。 - 从引用[3],复制文件命令可能用于备份或迁移。 - 引用[4]可能不直接相关,但提到组件问题。 4. **注意事项**:包括备份的重要性、错误处理等。 5. **相关问题**:生成相关问题。 标准Oracle升级路径: - 从11.2.0.111.2.0.4,通常需要先升级到中间版本11.2.0.3,然后再到11.2.0.4,因为Oracle可能不支持直接跳跃升级。但根据Oracle文档,11.2.0.111.2.0.4是可能的,但可能需要应用补丁或使用特定方法。 实际知识: - Oracle数据库升级一般步骤: 1. 计划:检查兼容性、备份等。 2. 安装新Oracle软件(新ORACLE_HOME)。 3. 备份现有数据库。 4. 停止数据库和相关进程。 5. 运行DBUA(Database Upgrade Assistant)或手动SQL脚本升级。 6. 验证升级。 - 对于11.2.0.111.2.0.4,可能需要先升级11.2.0.3,或直接应用补丁集。但Oracle 11.2.0.4是一个补丁集更新(PSU),可以直接应用到11.2.0.x版本。 参考引用[1],它提到从11.2.0.111.2.0.3,然后说升级11.2.0.4类似。所以,在我的回答中,我可以强调类似步骤。 关键步骤: 1. **准备**: - 备份数据库(冷备份或RMAN)。 - 停止Oracle实例、监听器、EM等。 - 下载11.2.0.4软件(需要Oracle Support账号)。 2. **安装新软件**: - 创建新ORACLE_HOME(例如,/u01/app/oracle/product/11.2.0/dbhome_2)。 - 运行安装程序安装11.2.0.4软件。 3. **升级数据库**: - 使用DBUA图形工具或手动运行SQL脚本。 - 启动新Oracle Home的实例,运行升级脚本。 4. **后升级任务**: - 验证数据库状态。 - 更新监听器和tnsnames.ora。 - 测试应用程序。 根据引用[3],复制dbs目录文件,这可能是在迁移或备份时使用,但标准升级是安装新软件然后升级实例。 在回答中,我需要添加引用标识: - 当提到备份时,引用[2]。 - 当提到步骤类似时,引用[1]。 生成相关问题: - 基于主题,如备份策略、错误处理、性能影响等。 完整回答结构: 1. 引言:解释升级过程。 2. 详细步骤: a. 准备工作 b. 安装新软件 c. 升级数据库实例 d. 验证 3. 注意事项 4. 相关问题 </think> ### Oracle数据库从11.2.0.1升级11.2.0.4的完整方法 将Oracle数据库从11.2.0.1版本升级11.2.0.4是一个多步骤过程,需要仔细准备和执行以避免数据丢失或兼容性问题。Oracle升级通常遵循"先升级软件,再升级实例"的原则[^1]。以下是基于Oracle官方文档和最佳实践的详细步骤,确保过程可靠高效。整个过程可分为四个阶段:准备、安装新软件、升级数据库实例和验证。 #### 1. **准备工作(关键步骤,确保安全)** - **备份数据库**:执行全量备份(包括数据文件、控制文件、归档日志)。推荐使用RMAN(Recovery Manager)进行冷备份: ```bash rman target / backup database plus archivelog; ``` 备份后,将文件复制到安全位置[^2]。 - **停止相关进程**:彻底停止所有Oracle相关服务,避免升级冲突: ```bash sqlplus / as sysdba shutdown immediate; exit lsnrctl stop emctl stop dbconsole ``` - **检查系统要求**: - 确保操作系统(如Linux或Windows)满足11.2.0.4的最低要求(CPU、内存、磁盘空间)。 - 下载11.2.0.4软件介质(需Oracle Support账号,文件名为类似`p13390677_112040_Linux-x86-64.zip`)[^2]。 - 验证现有数据库状态:运行`SELECT * FROM v$version;`确认当前版本11.2.0.1。 - **创建新ORACLE_HOME**:为避免冲突,为11.2.0.4创建独立的安装目录(如`/u01/app/oracle/product/11.2.0/dbhome_2`),并复制配置文件(如`dbs`目录内容)[^3]。 #### 2. **安装新软件(11.2.0.4)** - **解压并安装**: ```bash unzip p13390677_112040_Linux-x86-64.zip -d /tmp cd /tmp/database ./runInstaller ``` 在安装向导中: - 选择"升级现有数据库"选项。 - 指定新ORACLE_HOME路径(如`/u01/app/oracle/product/11.2.0/dbhome_2`)。 - 忽略可选组件警告(如`oracle.sysman.agent`),除非需要特定功能[^4]。 - **应用补丁(可选)**:如果升级报错(如OPatch冲突),应用最新PSU(Patch Set Update)。下载补丁后运行: ```bash opatch apply ``` #### 3. **升级数据库实例** - **使用DBUA(推荐)**:Oracle Database Upgrade Assistant(DBUA)提供图形化向导,自动处理升级: ```bash cd $ORACLE_HOME/bin ./dbua ``` - 选择要升级的数据库(11.2.0.1实例)。 - 启用"启用并行升级"加速过程(大型数据库适用)。 - 忽略非关键警告(如组件版本不匹配[^4]),但记录错误代码以便排查。 - **手动升级(备用方法)**:如果DBUA失败,按顺序执行SQL脚本: ```bash sqlplus / as sysdba STARTUP UPGRADE @?/rdbms/admin/catupgrd.sql SHUTDOWN IMMEDIATE STARTUP @?/rdbms/admin/utlrp.sql ``` 此阶段可能耗时较长(取决于数据大小),需耐心等待[^2]。 #### 4. **验证和后处理** - **检查升级结果**: ```sql SELECT * FROM v$version; -- 应显示"Oracle Database 11g Release 11.2.0.4.0" SELECT status FROM v$instance; -- 应为"OPEN" ``` - **更新环境**: - 修改`.bash_profile`或`/etc/oratab`,将默认ORACLE_HOME指向新路径。 - 重启监听器:`lsnrctl start`。 - **测试功能**:运行应用连接测试,并验证关键SQL查询。 #### 注意事项 - **备份至关重要**:升级前必须备份,否则数据丢失风险极高(恢复只能从备份还原)[^2]。 - **错误处理**:常见错误如`ORA-600`或组件缺失,可通过Oracle Support或社区论坛查询错误代码解决[^2]。 - **性能影响**:升级过程可能锁定数据库数小时,建议在维护窗口进行。 - **直接升级可行性**:11.2.0.111.2.0.4通常支持直接升级,但如果遇到兼容性问题,建议先升级11.2.0.3作为过渡[^1]。 - **资源要求**:确保系统有足够资源(如临时空间大于10GB),避免升级中断。 通过以上步骤,您可以安全完成升级。如果遇到具体错误,提供错误代码可进一步诊断。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值