一月 02
就在上一篇的总结写完之后,同事跟我请教一个问题:Windows底下的oracle启不启来了,要怎么恢复数据?
仔细询问了一下,原来遇到问题的地方还是某国家权力机构的要害部门,问题不解决的话,估计会有一票人会跳楼的。想得很简单,这么重要的数据库肯定会有备份,直接恢复最近的全备,然后用归档恢复到时间点就是了。结果我同事告诉我,最近的备份是两天前的,而那边的ORACLE根本就没有开归档模式,我直接就崩溃了,实在是不能相信,居然这么重要的数据库没有开归档的,FAINT!!!!!!
再仔细的询问一下,原来对方是在生产库上想把oracle的版本升级到9.2.0.4,升级之前没有做备份,然后直接拿了9.2.0.4的安装盘就直接往上头装............然后装完了,oracle就起不来了。
实在是没有什么语言可以形容了,不过单就这个描述来说,这个库的用户数据应该还没有损坏,还是有很大的恢复机会。仔细的整理了一下思路,设计的恢复的步骤如下:
- 把原来的oracle目录做个备份,为了以防万一,这个备份必须在移动磁盘上也保留一个。
- 卸载掉现有的oracle。
- 重新安装一个原来工作正常的Oracle版本,安装过程中不建库。
- 设置系统的oracle_sid为正常工作库的实例名。
- 把刚才备份的oracle里面的用户文件都恢复到跟原来一样的位置去。
- 设置没有库的时候的oracle 连接用户:
- C:\testdb>oradim -new -sid 原来的实例名 -intpwd oracle -startmode m -pfile 原来的pfile的完整路径
- sqlplus连接Oracle实例,看看能不能正常startup。
很幸运的,对方根据这个步骤就把这个要命的数据库给启起来了,总算让大伙都过上了个安稳年。
一月 2nd, 2007 at 12:55 am
2006年的最后一天----补充之二...
为了给那个该死的Oracle库考虑数据恢复步骤,阿肥和光光同学等了我要半个小时,到最后,他们实在是等不下我了,就先跑了,跑了就跑了,也没有跟我吱一声,害的我匆匆忙忙收拾东西就往...