WINDOWS VISTA 上恢复oracle 10g

   这两天一时冲动装了VISTA SP1,兼容性还可以,没有遇到什么兼容问题,以前在xp sp2 上安装的oracle 10g数据库,现在就想恢复原来的数据库,原来有一种方案是 ,原来数据库装在E:\oracle\product\10.2.0\db_2下面,把db_2文件夹改成db1,新安装一个oracle数据库安装到db2文件夹上,安装完以后把新装的数据库所在文件夹改成db3,把旧数据库文件夹改回db2,重新启动即可, 网上说可以但是试了一下却不能启动成功,可能是和机器名改了有关系,将数据库卸载,机器名改回原名,重新安装还是不能成功启动,然后使用第二方案,完全卸载数据库,全新安装数据库,但是选择不安装附加数据库,将原有数据库目录下面的database和dbs文件夹复制过来覆盖新装数据库的文件夹
原数据库的sid为dw

使用管理员模式打开cmd
输入 oradim -new -sid dw 创建服务,并使用服务管理器启动服务
使用oracle的管理工具的net configuration assintant 创建监听服务并启动,
然后又转入cmd
输入set oracle_sid=dw
输入 sqlplus “/as sysdba” 以管理员模式登入sqlplus
进入以后提示登入到空闲进程
输入startup启动数据库
C:\Windows\system32>sqlplus “/ as sysdba”

SQL*Plus: Release 10.2.0.1.0 – Production on 星期五 2月 29 17:38:07 2008

Copyright (c) 1982, 2005, Oracle.  All rights reserved.

已连接到空闲例程。

SQL> startup
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             171969412 bytes
Database Buffers          432013312 bytes
Redo Buffers                7135232 bytes
提示错误ORA-01092:ORACLE例程终止强行断开连接

发现是undo tablespace设置有问题,默认的undotbs1被删除,而是使用undotbs2,使用UE修改spfiledw.ora设置undo表空间为undotbs2, 启动的时候报控制文件错误,最后使用二进制模式编辑spfiledw.ora才可用,重新startup数据库,成功恢复,
使用脚本emca -repos create 创建Oracle EM dbconsole之知识库,应原数据库已存在,报错,提示表已经存在,使用emca -config dbcontrol db 成功创建服务使用http://iwind:1158/em 进入控制台

Now start the Oracle EM dbconsole Build Script ($ORACLE_HOME/bin/emca for Linux and $ORACLE_HOME\Bin\emca.bat for Windows).

$ emca -repos create
$ emca -config dbcontrol db

2008-2-29 5:36:48 oracle.sysman.emcp.EMDBPostConfig performConfiguration
信息: >>>>>>>>>>> Database Control URL 为 http://iwind:1158/em <<<<<<<<<<<
已成功完成 Enterprise Manager 的配置

新年

坐此山,望彼山,一事无成!
拥有一千亩的田,也得从脚下的一寸开始耕耘,才会有收成!耕耘,是很辛苦的啊!但只要亲身耕过,成果就会甜美!