Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5613330
  • 博文数量: 745
  • 博客积分: 10075
  • 博客等级: 上将
  • 技术积分: 7716
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-29 12:09
文章分类

全部博文(745)

文章存档

2019年(1)

2016年(1)

2010年(31)

2009年(88)

2008年(129)

2007年(155)

2006年(197)

2005年(143)

分类: Oracle

2009-02-20 18:52:05

原来在windows上做过一个oracle9.2.0.6到10.2.0.1的升级,这次实验一把HP UNIX机器上oracle9.2.0.1->oracle9.2.0.8->10.2.0.1的升级,下面是具体过程:
 
1,oracle9.2.0.1基本情况介绍:
ORACLE_SID=ora
ORACLE_HOME=/home/db/oracle/ora
ORACLE_BASE=/home/db/oracle
 
2,这次实验的目的是从ORACLE9i升级到ORACLE10g,ORACLE10.2.0.8是个中间过渡产品,根据ORACLE官方升级文档,oracle9i版本必须满足9.2.0.4或者以上版本才能升级到10G,所以首先要完成oracle9.2.0.1到oracle9.2.0.8的版本升级;
 
3,停掉oracle9.2.0.1数据库,在图形界面中通过dbca安装oracle9.2.0.8介质,使用和之前相同的oracle安装路径/home/db/oracle。安装完成后通过sqlplus进入到SQL中看是否能够正常启动oracle,确认没有问题,下一步开始进行数据库文件的升级;
 

4,升级数据库字典:

SQL>SPOOL patch.log(此文件默认存放在/tmp目录下)

SQL>@/home/db/oracle/ora/rdbms/admin/catpatch.sql (升级数据库字典)

SQL>SPOOL OFF

 

5,升级编译程序:

SQL>spool rp.log

SQL>@/home/db/oracle/ora/rdbms/admin/utlrp.sql

SQL>SPOOL OFF

 

6,查看升级结果:

SQL>select * from V$version确认此时数据库版本为ORACLE9.2.0.8

 

7,数据库启停测试:

SQL>shutdown immediate;

SQL>startup 确保数据库能正常启动;

 

8,通过rman对数据库做一个全备:

建立1GB大小文件系统“/backup”作为数据库备份文件存放处,并赋予正确的权限跟角色;

执行全备过程:

# su – oracle

$sqlplus “/ as sysdba”

SQL> startup mount;

$ rman target / nocatalog

2> run{

3> allocate channel c1 type disk;

4> backup full database filesperset 3 format '/backup/data_%U.bak';

5> release channel c1;

6> }

NOTE:如果在升级过程中遇到错误需要还原,那么也必须把数据库启动到mount状态才能进行还原全过程:

RMAN>restore database

SQL> recover database

 

9,安装oracle10G,选择与oracle9I不同的安装目录“/home/db/oracle/10g”,基本情况如下:

ORACLE_BASE=/home/db/oracle

ORACLE_HOME=$ORACLE_BASE/10g

ORACLE_SID=ora

NOTE:只安装oracle软件,不安装数据库

 

 

 

 

阅读(2660) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~