oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

时间:2022-07-02 07:42:54

先交代一下背景:

操作系统:windows xp

已有数据库版本:10.2.0.3

升级目标版本:11.2.0.1

步骤大纲:

在源操作系统(安装有10.2.0.3数据库的操作系统)上安装11.2.0.1数据库软件,然后借助于Database Upgrade Assistant 升级数据库,检测升级后的数据库情况,删除源数据库相关的软件;

注:为了更清晰的展示整个过程,本文采用大量截图来说明;

具体步骤:

在源操作系统上安装11.2.0.1软件,在安装选项中可以选择“仅安装数据库软件”或“升级现有数据库”;这里选择后者

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)


出现了这个问题,感觉很奇怪,因为内存空间完全够用啊,怎么检测通不过呢,经过查找资料这里需要打开磁盘的共享属性:

C:\Documents andSettings\Administrator>net share c$=c:

c$ 共享成功。

重新进行检测

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

说明已药到病除,接着进行

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

这个时候出现了一个错误,提示找不到OracleMTSRecoveryService的位置,于是就查注册表中该键值,发现一个问题,解决方案如图

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)


接着进行

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

选者“是”

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

这个地方就不移动原来的数据文件,继续放在源位置;

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

上面 两张图是升级前的预览、概要,根据上面的提示,说明如果源数据库没有关闭的话,在升级过程中升级程序会关闭源数据库,再进行升级

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

为了避免升级过程中出错,这里选择了先备份再升级选项,所以上图在升级前有一个备份的操作

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

出现这个错误的原因是我源数据库的sga_target设置为600M,而11.2.0.1要求最低644M ,这个时候当然不能选择“中止”,但是选择“忽略”后,升级程序还是不能进行,这个时候没办法,只能按照它的提示先进行恢复,恢复到10.2.0.3,修改sga_target参数后再进行升级

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

上图是恢复的过程,恢复完成后给出了下图的提示:

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

说明升级失败(已经恢复了,当然升级失败了);先修改sga_target再说

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

接着用Database Upgrade Assistant 进行升级(在dos窗口中输入dbua),步骤如上面一样,这里来看一下升级程序备份源数据库的情况

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

红色框着的部分是第一次升级时备份,绿色框着的部分是第二次也就是修改过sga_target后备份的情况,其中有三个文件重叠了,也就是说进行了覆盖;如果空间不够的话可以把红色框着的部分删除; 

接着向下进行

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

上面 三张图显示的是升级完成后的概要,提示数据库已经升级成功,并准备就绪(已启动),可以使用了,单击关闭按钮,这个时候,在刚才dos窗口中会有这样的提示:

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

给出了升级后的重大性能更改,详细信息可以查看该路径下的这份文档;

接下来检查数据库情况(还在修改sga_target那个窗口,这样可以做个对比):

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)

OK ,其实到了这里说明数据库已经完成了升级,可以正常使用了; 那么源数据现在什么情况呢,经检查,发现源数据的服务、路径、相应文件均存在,其实已经没有存在的必要了,那么就删除

oracle数据库升级记(记一次10.2.0.3版本升级到11.2.0.1版本的过程)


好了,本次升级宣告结束; 欢迎大家评论、指正;




-----------------------------------------------------------------------------------------------------------------------

博文所有内容均属原创,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

Blog:    http://blog.csdn.net/xuelanggongwu

Email:   perfect_db@sina.com

   QQ:   787266309