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. java实验(三)——课堂小测

    这次的课堂小测是用以前生成的那些四则运算的代码,然后将这些题目写到一个文件中,再通过这个文件读取题目的信息,每读入一个答案的时候,遇到星号的时候,等待用户输入然后判断输入的答案是否正确,然后输出小一道 ...

  2. Java泛型的主要用途

    1.泛型的主要用途就是代替各种类型,作为一个笼统的整体类型代替,也就是代替参数,不论是传入参数还是返回参数.都可以用泛型来代替. 如dao操作类的增删改查操作,因为传入参数的类型不同,但基本都是相同接 ...

  3. 跟着9张思维导图学JavaScript

    思维导图小tips 思维导图又叫心智图,是表达发射性思维的有效的图形思维工具 ,它简单却又极其有效,是一种革命性的思维工具.思维导图运用图文并重的技巧,把各级主题的关系用相互隶属与相关的层级图表现出来 ...

  4. Linux 思维导图

    1.Linux学习路径: 2.Linux桌面介绍: 3.FHS(文件系统目录标准): 以上三张图,都是在学习实验楼上的课程--Linux 基础入门,教程里面看到的. 4.Linux需要特别注意的目录: ...

  5. 一个重绘MFC的文件传输client

     一个重绘MFC的文件传输client,TCP/IP协议的文件传输client(支持上传.下载.续传.管理等功能,本处仅仅选择了上传功能).从用户视觉上看,肯定比原生MFC界面要有感觉,啥也不说了 ...

  6. ubuntu安装nginx时提示error: the HTTP rewrite module requires the PCRE library

    ubuntu安装nginx时提示error: the HTTP rewrite module requires the PCRE library 须要安装pcre包. sudo apt-get upd ...

  7. iOS 获取手机 唯一标识

    存贮在keychainQuery 可以统计用户使用情况 -(void)gatherMessage{ //采集用户设备信息 NSUserDefaults *userDefaults=[NSUserDef ...

  8. soapUI系列之—-04 问题解决 获取接口返回报文response报错

    1. SoapUI+Groovy中"org.apache.xmlbeans.XmlException: error: Unexpected element: CDATA" 通过So ...

  9. swagger 如何在UI界面加入Authentication token值

    接口 2.access_token 值: 3  输入值:bearer+空格+值

  10. Android中View窗口getWidth和getMeasuredWidth的差别

    今天在研究自己定义listview的下拉刷新的效果.想移植到项目需求中,再看自己定义源代码时发现了一个问题就是getWidth和getMeasuredWidth两个方法有什么差别,求教万能的百度,经调 ...