`
wuhuizhong
  • 浏览: 681205 次
  • 性别: Icon_minigender_1
  • 来自: 中山
社区版块
存档分类
最新评论

oracle9i升级oracle10g

 
阅读更多

进行oracle数据库版本升级的时候会有2种方式

1.通过dbua(database upgrade assistant)

2.exp/imp

通过dbua来升级的话由于不涉及到数据文件的改变,所以速度会比较快,但是如果dbua一旦在升级的过程中出现问题可能会导致原来的库不可用。

而通过exp/imp虽然对原来的库不会有影响,但是如果数据库比较大的话那么升级的时间将会是不可接受的(尤其对24*7)的应用来说。

 

针对这个问题,可以利用dataguard和transport tablespace功能来实现最短时间内的安全升级。

 

具体的实现方法是这样的

1.先为主库建立一个dataguard数据库(可以在线做)

2.在dataguard库上安装10g软件(可以在线做)

3.整理一些不能通过transport tablespace搞定的东西,比如sequence,synonyms,grants......

4.停止主库这边所有write的应用,提供read的服务(写入停止,提供查询)

5.强制归档主库redo log并传到dataguard恢复(写入停止,提供查询)

6.利用transport tablespace来转换数据库版本,并创建sequencee,synonyms,grants等(写入停止,提供查询)。

7.验证新环境的过程,在验证过程中如果发现有问题,则可以切换会原来的系统(写入停止,提供查询)。

8.切换应用到10g数据库(提供服务)

我们再从技术上验证一下transport tablespace可以运用在版本升级


在9i的库上创建一个test tablespace 


create tablespace test
datafile '/opt/oracle/test.dbf' size 10m
extent management local autoallocate;


创建一张表在test表空间上 


create table test1(a number) tablespace test;


insert into test1 values(1);
commit;


SQL 9i>select * from test1;


         A
----------
         1






把test表空间置为read only模式




alter tablespace test read only;


到处test tablespace的metadata


exp /'sys/sys as sysdba/'  transport_tablespace=y tablespaces=(TEST)  file=test.dmp log=test.log


传输dmp文件和数据文件(在amadeus的案例里面由于10g的库和9i的库在同一台机器上,所以避免了拷贝数据文件的时间,这也是整个方案的重点之一)到远程


scp test.dmp oracle@10.0.100.115:/opt/oracle/


scp /opt/oracle/test.dbf oracle@10.0.100.115:/opt/oracle/






在目标库上导入metadata数据


imp /'sys/sys as sysdba/' transport_tablespace=y tablespaces=(TEST) file='/opt/oracle/test.dmp' datafiles=


('/opt/oracle/test.dbf') tts_owners=test fromuser=test touser=test log=tts_i.log






查看test1表,发现数据一致




SQL 10G>select * from test1;


         A
----------
         1


把test表空间置为read write模式


alter tablespace test read write;


insert into test1 values(2);




SQL 10G>select * from test1;


         A
----------
         1
         2


一切正常,测试完毕


这个测试简单的模仿了transport tablespace升级数据库的可能性,当然在实际过程中我们要校验是否自包含表空间,是否需要创建sequence等,但是总体来说这种方案能提供最短时间内的数据库版本升级。

分享到:
评论

相关推荐

    实验oracle9i升级到10g.pdf

    ### Oracle 9i 升级至 10g 的详细步骤及注意事项 #### 背景与目标 本文档详细阐述了从Oracle 9i升级到Oracle 10g的过程,特别聚焦于在HPUX操作系统下的升级流程。此次升级的目的在于迁移现有的Oracle 9.2.0.1...

    Oracle 9i 10g 11g odbc driver数据库连接驱动

    随着Oracle 10g的发布,ODBC驱动也进行了相应的升级,以适应新版本的特性。10g带来了Real Application Clusters (RAC)、Automatic Storage Management (ASM)、Data Guard等高级功能,增强了数据库的可用性和可扩展性...

    oracle9i全备份导入到11g说明

    ### Oracle 9i 全备份导入到 11g 的处理方法 #### 一、问题背景 当将Oracle 9i的数据全备份导入到Oracle 11g版本时,经常会遇到由于`db_block_size`参数不一致导致的导入失败问题。这种情况下,如果直接进行导入...

    Oracle 9i10g 数据库管理详细

    ### Oracle 9i/10g 数据库管理详细知识点 #### 一、Oracle 9i/10g 概述 - **Oracle 9i** 和 **Oracle 10g** 是Oracle公司推出的两个重要的数据库管理系统版本。这些版本在企业级数据库管理领域具有重要意义。 - *...

    Oracle 9i Client (Oracle 9i 客户端) 简化版 (不安装Oracle客户端,也可以使用PLSQL Developer)

    1、本软件可作为简单的Oracle9i客户端使用,如用户对Oracle有更高的使用要求,请正式安装Oracle客户端或服务器。 2、本软件安装后,可使用自带的SQL Plus连接Oracle服务器,支持EXP、IMP命令。用户可以配合PLSQL ...

    oracle10g数据导入到oracle9i解决方案

    ### Oracle 10g 数据导入到 Oracle 9i 解决方案 #### 背景介绍 在进行数据库迁移时,可能会遇到将Oracle 10g中的数据迁移到Oracle 9i的情况。由于Oracle 9i与Oracle 10g之间存在版本差异,这可能涉及到一些兼容性...

    oracle 9i 全部下载链接

    - [ship_9204_linux_disk1.cpio.gz](http://download.oracle.com/otn/linux/oracle9i/9204/ship_9204_linux_disk1.cpio.gz) - [ship_9204_linux_disk2.cpio.gz]...

    Oracle 9i、10g、11g通用jdbc驱动包

    Oracle 9i、10g、11g通用JDBC驱动包是Oracle公司为Java开发者提供的数据库连接驱动,使得Java应用程序能够与Oracle数据库进行交互。这些驱动程序遵循Java Database Connectivity (JDBC) API规范,是Java平台上的标准...

    Oracle9i客户端精简版

    Oracle9i客户端精简版。 Oracle9i客户端精简版Oracle9i客户端精简版Oracle9i客户端精简版Oracle9i客户端精简版Oracle9i客户端精简版Oracle9i客户端精简版Oracle9i客户端精简版

    oracle9i客户端精简版.zip

    在“oracle9i310.msi”这个文件中,包含了Oracle 9i客户端的安装程序,用户只需运行此文件即可开始安装。 4. **使用说明.htm**:这个文件提供了关于如何使用客户端的指导,可能包括安装步骤、连接配置、基本操作等...

    oracle9i310.rar

    由于其资源占用较小,因此特别适合这些环境下使用,同时也能连接到更高版本的Oracle数据库,如10g和11g。 Oracle 9i客户端主要包含以下组件和功能: 1. **Oracle Net Services**:这是客户端与服务器通信的核心...

    windows server 2003 Oracle9i 安装

    Windows Server 2003 Oracle9i 安装指南 Windows Server 2003 是微软公司推出的服务器操作系统,而 Oracle9i 是 Oracle 公司推出的关系数据库管理系统。本文档将指导读者在 Windows Server 2003 上安装 Oracle9i ...

    oracle9i物理结构,oracle9i物理结构

    Oracle 9i 物理结构是数据库管理系统的核心组成部分,它决定了数据如何在磁盘上存储、管理和访问。Oracle 9i 物理结构主要由以下几个关键组件构成: 1. **数据文件 (Data Files)**: 扩展名为 .DBF 的数据文件是...

    oracle9i10g编程艺术.rar

    本压缩包"oracle9i10g编程艺术.rar"显然是一份关于Oracle数据库编程与实践的资源集合,旨在帮助学习者深入理解和掌握Oracle数据库技术。 首先,Oracle 9i是Oracle数据库的第九个主要版本,引入了诸多新特性,如自动...

    Oracle9i+Windows下安装

    百度云盘下载地址https://pan.baidu.com/s/1iU5zzuVbm2-uJtzQGr98zw windows下安装Oracle9i

    oracle9i教程

    《Oracle9i教程详解》 Oracle9i是Oracle公司推出的一款强大的关系数据库管理系统,它以其高效、稳定和灵活的特点在企业级应用中占据重要地位。本教程将深入探讨Oracle9i的核心概念和技术,帮助读者全面了解和掌握这...

    oracle9i客户端精简免安装.rar

    本压缩包“oracle9i客户端精简免安装.rar”是专为Windows操作系统设计的Oracle9i客户端版本,旨在简化Oracle数据库的管理和操作,让用户无需进行复杂的安装过程即可快速使用。 Oracle9i客户端主要包括以下几个关键...

    Oracle 9i 参考手册

    Oracle 9i是一款由甲骨文公司推出的数据库管理系统,它在2001年发布,是Oracle数据库的一个重要版本。这个参考手册包含了关于Oracle 9i的全面信息,旨在帮助用户理解和操作该系统。Oracle 9i在设计时强调了性能优化...

    weblogic 8.1 + oracle 9i平台升级教程

    weblogic 8.1 + oracle 9i平台升级教程1.doc

    oracle9i下载地址

    oracle9i下载地址, 分三个IOS文件, 加压即可安装.

Global site tag (gtag.js) - Google Analytics