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. [NOI2012(bzoj2879)(vijos1726)]美食节 (费用流)

    2879: [Noi2012]美食节 Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 2288  Solved: 1207[Submit][Status ...

  2. Java面试题总结之Java基础(二)

    Java面试题总结之Java基础(二) 1.写clone()方法时,通常都有一行代码,是什么? 答:super.clone(),他负责产生正确大小的空间,并逐位复制. 2.GC 是什么? 为什么要有G ...

  3. 10-JS的函数学习

    <html> <head> <title>js的函数学习</title> <meta charset="UTF-8"/> ...

  4. Tomcat错误信息(服务器版本号)泄露(低危)

    一.问题描述Tomcat报错页面泄漏Apache Tomcat/7.0.52相关版本号信息,是攻击者攻击的途径之一.因此实际当中建议去掉版本号信息. 二.解决办法 1.进入到tomcat/lib目录下 ...

  5. mysql查看存储过程show procedure status;

    1.mysql查看存储过程(函数) 2.MySQL查看触发器 查看触发器 语法:SHOW TRIGGERS [FROM db_name] [LIKE expr] 实例:SHOW TRIGGERS\G ...

  6. Gerrit实现代码审计(code review)

    1.Gerrit是个啥? 实现代码审计,比git(gitlab.github)多了代码审计的功能. 2.两类角色 角色1:我是代码编写者,只能写代码和提交给审计者代码,不能直接把代码合并到线上发布 角 ...

  7. [转]JAVA对象容器

    要用Java实现记事本的功能.首先列出记事本所需功能: 可以添加记录(字符串): 可以获得记录条数: 可以删除其中某一条记录: 可以获得指定第几条的记录: 可以列出所有的记录. 如果这个记事本是某个大 ...

  8. 字符设备之poll机制

    poll机制作用:相当于一个定时器.时间到了还没有资源就唤醒进程. 主要用途就是:进程设置一段时间用来等待资源,假设时间到了资源还没有到来,进程就立马从睡眠状态唤醒不再等待.当然这仅仅是使用于这段时间 ...

  9. 【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)

    首先.在開始搭建MyEclipse的开发环境之前.还有三步工具的安装须要完毕,仅仅要在安装配置成功之后才干够进入以下的java Web项目开发环境的搭建. 1.安装工具 第一步,下载并安装JDK,到官 ...

  10. Essay

    要养成先连续输入一对匹配的字符——比如"("和")",以及"{"和"}"——再在其中填写内容的习惯.如果先填写内容,很容 ...