Oracle数据库升级也并非简单的事,这篇博客,博主对Oracle那点事做了较详细的介绍:

  http://blog.itpub.net/9599/viewspace-473003/

我还属于Oracle的菜鸟,就不献丑介绍了。

  下面我就简单总结下,Oracle同版本升级的经历:

升级数据库:
1. 先检查数据库当前版本:
  SELECT * FROM v$version;

2. 使用RMAN或exp 进行全库备份

  【这一步非常非常重要,因升级到数据部分时,虚拟机没空间了,导致VM崩溃,升级失败.orcl库也挂了.不得不从另一台Oracle上创建了一个Orcl,

  然后,冷备迁移过来,才得以重新升级。】
  如:RMAN全备
  export ORACLE_SID=orcl
  rman target /
  RMAN>backup full database plus archivelog //全备数据库,并且包括ArchiveLog。

3. 最后按下面步骤进行升级
  <1> 先知道Oracle 7个更新文件的作用:
    第一 和 二个包表示database ,  如果升级数据库,只需要这2个文件即可。
    第三个包表示grid,  用来升级RAC 的CRS。如果升级RAC 要先用这个文件。
    第四个表示客户端,
    第五个表示gateways, 
    第六个表示 examples,   这个是我们的示例文件安装包。
    第七个表示deinstall(它是卸载Oracle的工具).

  <2> 升级Oracle数据库
         首先将第一和二个zip压缩包上传,并在同一个目录下解压,因为,它两的目录结构
    基本一致,并且这两压缩包的内容需要合并后才能,执行runInstaller文件。所有要在
    同一个目录下解压,这样会直接合并。

  <3> 运行runInstaller,若没有图像界面会可能就需要有应答文件了,这个就需要再查了,
    我测试时,有图形界面,所以直接用图形界面来升级:
    需要注意几个地方:
    A. 这是第一个地方,这里需要点,“Skip software updates"跳到软件更新

      

    B.这里是选项安装新Oracle软件的位置,这里不能写旧的位置。
     另注: 磁盘空间一定要5~10G, Oracle11.2.0.1升级到11.2.0.3需要4.1G。

      

    C. 第三点:需要注意: /etc/oratab这个文件。
      因为,更新到最后是更新数据库,更新数据库时,必须要有一个数据库是运行的.
    才能执行,并且更新数据库时,它是通过oratab文件来让你选择通过那个运行的
    数据库来尝试更新数据库。

  4. 数据库更新完后,需要做以下事情:

   首先,升级完成后,需要将Oracle必须的环境变量修改为升级后的Oracle软件路径。

   需要修改: ORACLE_HOME.

   如我的环境:

    Oracle11.2.0.1时:

      ORACLE_BASE=/home/oracle/ora

      ORACLE_HOME=$ORACLE_BASE/product/11g/db_1

   升级后,Oracle版本为:11.2.0.3,新的家目录为:

    Oracle11.2.0.3: ORACLE_HOME=$ORACLE_BASE/product/11.2.0.3/db_1

    <1> 先执行这个文件,用sysdba的权限:
      SQL> SPOOL update.info
      SQL> $ORACLE_HOME/rdbms/admin/utlu112i.sql
      SQL> SPOOL OFF
      查看日志是否有错误。
    <2> 关闭数据库,并更新启动。
      SQL> shutdown immediate
      SQL> startup upgrade

      SQL> select * from v$version; #查看Oracle的版本。
      SQL> select status from v$instance;
      STATUS
      ------------
      OPEN MIGRATE

      #下面开始执行升级脚本。
      SQL> SPOOL update-info.log
      SQL> @$ORACLE_HOME/rdbms/admin/catupgrd.sql
      #下面是查看升级结果的; 这个不是很确定,因为参考博客的环境是,
      # 是9i 升 10g
      #SQL> @$ORACLE_HOME/rdbms/admin/utlu102s.sql
      SQL> SPOOL OFF
      完成后,需要查看升级日志,是否有保错,若有,则重新执行升级SQL脚本。

      #升级完成后,需要重启DB.
      SQL> shutdown immediate
      SQL> startup
      #下面是执行重新编译无效对象
      SQL> @$ORACLE_HOME/rdbms/admin/utlrp.sql
      #查看是否还存在无效对象,若为0,则表示升级完成。否则重新执行编译。
      SQL> SELECT count(*) FROM dba_objects WHERE status='INVALID';

      SQL> select name from v$database; #确认数据库的SID是否正确。
      SQL> show user; #确认当前是否为sys用户。
      SQL> select tablespace_name, bytes from dba_data_files; #确认表空间大小是否正确.

      #下面这个步骤网文中没有,这是尚观视频中提到的,作用不明.
      #SQL> @$ORACLE_HOME/rdbms/admin/catalog.sql

      #最后,重启数据库没有问题就是升级成功了。
      SQL> select status from v$instance;
      STATUS
      ------------
      OPEN      #注意,成功打开数据库后,这里将是OPEN,而非OPEN MIGRATE

Oracle11.2.0.1升级到11.2.0.3的更多相关文章

  1. oracle--10.2.0.3升级到11.2.0.4

    一,环境 01,待升级的系统 升级仅支持10.2.0.2版本之后的系统,如果不是,请把10G升级至高版本! 本次实验环境10.2.0.3 02,挂载11G系统 03,升级须知 1) 做好备份 二,DB ...

  2. LINUX中ORACLE 11.2.0.1 升级到11.2.0.4

    11.2.0.4补丁号13390677,共7个文件,分别是 其中1&2是db,3是grid,4是client,5是gateways,6是example,7是deinstall 上传安装介质并解 ...

  3. 11.2.0.1升级到11.2.0.4报错之中的一个:UtilSession failed: Patch 9413827

    UtilSession failed: Patch 9413827 requires component(s) that are not installed in OracleHome. These ...

  4. Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0

    Oracle Study之--Oracle 单实例11.2.0.1.0升级到11.2.0.3.0 系统环境: 操作系统:RedHat EL6(64位) Oracle:    Oracle 11gR2 ...

  5. 探索Oracle数据库升级6 11.2.0.4.3 Upgrade12c(12.1.0.1)

    探索Oracle数据库升级6 11.2.0.4.3 Upgrade12c(12.1.0.1) 一.前言:       Oracle 12c公布距今已经一年有余了,其最大亮点是一个能够插拔的数据库(PD ...

  6. Oracle 11.2.0.3.0 RAC GI_DB升级到11.2.0.4.0

    转载:  http://blog.csdn.net/frank0521/article/details/18226199 前言 还是大家常说的那句:生产环境千万记得备份哈~~~ 以下的环境,是我的测试 ...

  7. oracle 11.2.0.1.0 升级 11.2.0.4.0 并 patch 到11.2.0.4.7

    升级步骤: (1)    备份数据库 (2)    运行patchset,升级oracle 软件 (3)    准备新的ORACLE_HOME (4)    运行dbua 或者脚本升级实例 (5)   ...

  8. rac 10g 10.2.0.1升级到10.2.0.5具体解释

        RAC 10.2.0.1 升级到 10.2.0.5 一. 准备: Patch 包:p8202632_10205_LINUX.zip   节点数:3个节点       RAC1    RAC2  ...

  9. Oracle数据库版本10.2.0.1升级到10.2.0.3(转)

    Oracle数据库版本10.2.0.1升级到10.2.0.3 1.停止OEM/isqlplus/监听/DB实例 $ emctl stop dbconsole $ isqlplusctl stop $ ...

随机推荐

  1. Spring Security教程(5)---- 国际化配置及UserCache

    这一章是为了给后面的讲解打基础的,主要介绍下国际化的配置及UserCache的配置及使用 国际化配置 <!-- 定义上下文返回的消息的国际化 --> <bean id="m ...

  2. CodeForces 567C. Geometric Progression(map 数学啊)

    题目链接:http://codeforces.com/problemset/problem/567/C C. Geometric Progression time limit per test 1 s ...

  3. 求出全部的正整数对 使他们最大公约数为n,最小公倍数为m

    题目大概是这种:cid=1021&pid=5http://" target="_blank">点击打开链接 大意就是 求出全部的正整数对 使他们最大公约数为 ...

  4. Hadoop DistributedCache使用案例

    背景 公司数据处理具有两个计算框架,单机框架和MR框架.眼下我已经抽象出一套API interface, 供业务计算开发者使用. 并分别在两个计算框架下实现了API的运行调度.应用开发者有时间须要通过 ...

  5. Activity动态添加Fragment时遇到的问题

    1.Activity动态调用代码 TitleFragement a = new TitleFragement();        getFragmentManager().beginTransacti ...

  6. 2016/3/20 数组定义 数组遍历 超全局数组 数组元素设置(in_array() 、array_reverse()、count()、array_unique()、unset()、array_values、array_merge、array_push) 列表实例

    一.数组定义 php数组与其他语言的数组的不同: 其他例如java语言 :同一种类型数据的集合. php:数组可以存储任何类型的数据.同一个数组中可以放int类型也可以放string类型 ①索引数组的 ...

  7. Java数据类型的分类

    java支持的类型分为两类:基本类型和引用类型 一.基本类型 4类8种: (1)整型:int.short.long.byte. (2)浮点型:float.double. (3)字符型:char. (4 ...

  8. WIN7 不用格式化磁盘怎么把FAT32系统改成NTFS系统

    开始-运行,输入cmd回车.假设你要转换D盘.输入convert d: /fs:NTFS回车. [ 此时可能会提示: 访问被拒绝 因为你没有足够的特权 是权限不够的原因 开始--程序--附件 右键&q ...

  9. 怎样快速刪除Word中超链接?

    有时我们从网上down了一些资料,存到Word文档里,会发现一些文字和图片带有超链接.这其实是Word自动修改功能引起的麻烦,那么,有什么办法可以把这些超链接快速批量删掉吗? 步骤/方法 1 按键盘上 ...

  10. 滑动窗体的最大值(STL的应用+剑指offer)

    滑动窗体的最大值 參与人数:767时间限制:1秒空间限制:32768K 通过比例:21.61% 最佳记录:0 ms|8552K(来自 ) 题目描写叙述 给定一个数组和滑动窗体的大小.找出全部滑动窗体里 ...