从9i升级到10g两个方案可供选择:
   一是利用oracle提供的一个升级实用程序dbua(database upgrade assistant)直接将9i的数据库升级到10g。

再有就是新建一个10g的数据库,利用oracle的导入/导出(imp/exp)实用程序迁移数据。

1.首先来讲第一种方案(用升级程序:dbua):

适合:  这种方案适宜于数据量比较大,用导入导出工具来迁移可能要花费很长时间的数据库.

方法:  用这种方案的话我们要在原来的数据库的机器上安装10g的软件,不安装10g的数据库.安装完10g的软件后,运行10g的数据库升级助手实用程序dbua,然后通过此升级向导完成9ig到10g的升级过程.升级过程中, dbua会自动的将一些数据库的配置更改成适合10g的环境,如数据库参数设置,内存配置,sql,pl/sql引擎等和数据库管理,操作相关的软件的版本也会自动升级到10g.

优点: (1)对于数据规模比较大的数据库而言,用这种方法升级是最快速的.

(2)保留原有数据库的物理结构(如数据文件,重做日志文件)和逻辑结构(表空间,用户,系统权限设置等),无需重新规划数据库.

风险: 这种方案存在一定的风险.虽然,10g的数据库升级助手实用程序dbua总体而言比较稳定,但是万一升级失败的话,原来的数据库就有可能使用不了,某些功能丢失,或运行不正常.所以在正式升级之前一定要先在测试库上先演练一下升级的所有过程,确认无误后才能在生产库上执行升级

IT成本:此种方案不需追加新的硬件投资.

dbua支持直接升级的数据库版本:

oracle 8版本8.0.6

oracle 8i版本8.1.7

oracle 9i版本9.0.1

oracle 9i版本9.2.0

2.第二种方案(用导入/导出工具:imp/exp):

适合: 这种方案适合数据量不是很大,中小规模的数据库升级

方法: 用这种方案的话我们必须先把旧的数据库的数据导出来,然后新安装和新建一个10g的数据库,然后将旧库的dump文件导入至新库.

优点: (1)用这种方法最大的优点是安全. 我们新建一个10g的数据库并导入旧库的数据以后可能保留原来的数据库,直到应用系统在新的数据库运行无误后才删去原有的数据库.如果有问题,还可以切换回原来的数据库,升级的风险非常小.
    (2)可以优化数据库结构.如果原来的数据库结构不好,如很多用户的数据存储在system表空间,或者是表空间碎片比较多,通过导出再导入到一个数库后,这些数据库的结构能够得到优化.

缺点: (1)升级的时间可能相对会长一些,因为导入导出的速度并不是很快
      (2)因为得新建一个数据库,所以得重新规划数据库的结构,如数据文件,表空间等.
IT成本: 可能会增加一些硬件投资.因为要建新库嘛。

摘抄:http://blog.chinaunix.net/uid-20521991-id-1655310.html

升级oracle 9i到10g的更多相关文章

  1. Oracle 9i 10g 11g 区别的转载

    下面看看9i.10g.11g版本的区别 Oracle 10g比9i多的新特性?        1. 10g支持网格计算,即多台结点服务器利用高速网络组成一个虚拟的高性能服务器,负载在整个 网格中衡(L ...

  2. oracle 9i/10g/11g(11.2.0.3)安装包和PATCH下载地址汇总

    今天上PUB看见一位热心人汇总了这么个地址列表,转发来空间: 把下面的地址复制到讯雷里就可以下载. -------------------------------------------------- ...

  3. oracle 9i/10gR2所有版本下载地址

    Oracle 9i Oracle9i Database Release 2 Enterprise/Standard/Personal Edition for Windows NT/2000/XP ht ...

  4. ORACLE 9i 数据库体系结构图

    ORACLE 9i 的数据库体系结构图,非常的全面.系统.高屋建瓴的整体介绍了ORACLE 9i 的数据库体系结构.如果能全面了解.清晰梳理.深入掌握这些知识点,相信对你了解学习.深入研究ORACLE ...

  5. oracle 9i相关问题

    Oracle 9i在连接数据库的时候需要加上双引号,如sqlplus “sys/oracle@orcl as sysdba” Oracle 9i不支持bigfile大的表空间创建,oracle9i或以 ...

  6. 使用Oracle 9i工具管理数据库 - 初学者系列 - 学习者系列文章

    前面介绍了Oracle 9i的安装,本文大概介绍下Oracle 9i提供的管理工具的使用. 1 打开数据库配置工具 2 下一步 3 下一步 4 下一步.这里输入数据库名和SID 5 下一步 6 下一步 ...

  7. 安装Oracle 9i - 初学者系列 - 学习者系列文章

    Oracle 9i数据库是经典的Oracle版本,就象SQL Server 2000一样.笔者最初使用到的Oracle版本就是Oracle 9i.下面就介绍下Oracle 9i的安装. 1.  下载O ...

  8. 出错场景是升级oracle驱动,将版本从ojdbc14升级到ojdbc6,hibernate执行原生态sql语句会报如下错误

    出错场景是升级oracle驱动,将版本从ojdbc14升级到ojdbc6,hibernate执行原生态sql语句会报如下错误:org.hibernate.MappingException: No Di ...

  9. SQL升级Oracle挖的Null坑,你懂的!

    最近公司做系统数据库升级,主要由原来的SQL数据库升级Oracle数据库,对于拥有千万级数据库的实用系统来说,迁移不是件容易的时,光数据同步就需要很久,更别说要修改升级原来的SQL库使用的存储过程和视 ...

随机推荐

  1. js 以函数名作为参数动态执行 函数

    function myFunc() { console.log(11111); } test("myFunc"); function test(funcName) { if(typ ...

  2. runtime 知识点

    demo https://github.com/ZOYOOPlus/runtime2 // //  ViewController.m //  runtime //  Copyright © 2017年 ...

  3. 【商业源码】生日大放送-Newlife商业源码分享 -转

    http://www.cnblogs.com/asxinyu/p/3225179.html   今天是农历六月二十三,是@大石头的生日,记得每年生日都会有很劲爆的重量级源码送出,今天Newlife群和 ...

  4. sift特征简述

    参考文献:http://blog.csdn.net/abcjennifer/article/details/7639681 分为几个步骤: 1. 构建尺度空间 2. LoG近似DoG找到关键点< ...

  5. Linux shell multifile content replace with sed

    #!/bin/bash # Linux shell multifile content replace with sed # 声明: # 本源代码主要是利用两份(中.英文)具有相同键值对的json数据 ...

  6. Android Jni调用浅述

    声明:欢迎转载,转载时请注明出处!http://blog.csdn.net/flydream0/article/details/7371692 1 简述 JNI是Java Native Interfa ...

  7. Luogu P2742 模板-二维凸包

    Luogu P2742 模板-二维凸包 之前写的实在是太蠢了.于是重新写了一个. 用 \(Graham\) 算法求凸包. 注意两个向量 \(a\times b>0\) 的意义是 \(b\) 在 ...

  8. SQL Server 为存储过程添加预定设置注释代码

    一个优秀的项目最少不了的是代码注释,兴许你是代码高手入目既知道该段代码主要功能是什么,但日子长了,记的东西多了,即时再熟悉的代码也渐渐的有点不认 识它,所以养成良好的写注释的习惯,对于自己对于他人都是 ...

  9. python之json扩展

    #!/usr/bin/env python # -*- coding: utf8 -*- # __Author: "Skiler Hao" # date: 2017/4/9 15: ...

  10. MYSQL数据库设计之字段选择原则

    关于字段的选择其实很多地方都有进行详细的介绍,我这里只写一下我在使用过程中的心得感受.如果想要全面的了解的话,大家可以去看高性能MYSQL这一本书籍,里面有一章节介绍的特别全面,基本涉及MYSQL中全 ...