数据库恢复(database restore)之兵不血刃——半小时恢复客户数据库
昨天,一个客户打打来电话,说他们的数据库坏了,不能用了,需要我帮助恢复下,这马上要放假了,居然出了这事儿,自己也不太喜欢恢复数据库这类,尤其是他们的数据库是个win上的库,但心里很清楚,客户比咱着急,客户就是上帝,没什么好说的,开工吧。通过认真了解,大体明白了客户的情况,他们的库是在win上的Oracle11g,因为杀毒软件的把Oracle软件的某些文件当成了病毒给删了,而且顽固到拷贝过去就会删掉,后来也不知道删了多少文件,数据库就起不来了,我也不知道他们把数据库给主动关了,还是数据库自己宕掉了,反正结果就是起不来了。经过检查,数据文件应该还没问题,只是大体判断而已,开始恢复吧。
1、安装软件
首先,得先重新安装Oracle软件,经过和客户沟通,他们很自信的说可以自己重新安装软件,于是,先由他们来安装数据库软件,为了保险起见,让他们把软件安装到和之前不同的位置。让我有点惊讶的是,客户安装软件非常快,可能也就10多分钟就装完了。为了说明,假设原来的软件安装路径为:
d:\app\erp\product\11.2.0\dbhome_1
新安装软件的路径为:
d:\app\erp\product\11.2.0\dbhome_2
软件装完了,接下来需要做的就是看看能否用新安装的软件把数据库拉起来。
2、设置环境变量
打开计算机高级设置-->环境变量设置--->设置:
ORACLE_SID=ora11g
ORACLE_BASE=d:\app\erp\product\
ORACLE_HOME=d:\app\erp\product\11.2.0\dbhome_2
将path中oracle有关路径d:\app\erp\product\11.2.0\dbhome_1\bin -->d:\app\erp\product\11.2.0\dbhome_2\bin
3、拷贝相应文件:
cp d:\app\erp\product\11.2.0\dbhome_1\database\*.* d:\app\erp\product\11.2.0\dbhome_2\database\
cp d:\app\erp\product\11.2.0\dbhome_1\network\*.* d:\app\erp\product\11.2.0\dbhome_2\network\
4、注销并重新登录OS用户
5、先删除旧的oracle服务
oradim -delete -srvc oracleserviceora11g
6、新建oracle服务:
oradim -new -srvc oracleserviceora11g -sid ora11g -startmode auto -shutmode immediate -srvcstart demande -spfile
7、重启新建的oracle服务
net start oracleserviceora11g
lsnrctl start
8、登录数据库测试:
sqlplus test/test@ora11g
如果能顺利登录数据库,说明到此一切OK。
9、删除旧的oracle软件目录,以释放空间。
10、至此,客户数据库恢复完成,前后大概半个多小时的样子。
最新文章
- 【原创翻译】初识Unity中的Compute Shader
- [JSP]获取时间
- SQL存储过程,使用事务(try catch),游标
- 谷歌Cartographer学习(1)-快速安装测试
- jquery_简单介绍
- app安装位置声明
- python selenuim使用代理的方式
- php基础复习(一)smarty模板
- PreferenceFragment 使用 小结
- Flume 1.5日志收集和存款mongodb安装结构
- Java读书笔记三(字符串)
- 使用WPF教你一步一步实现连连看
- poi 合并单元格、设置边框
- MYSQL updatexml报错注入
- js的call和apply拾遗
- java 日志脱敏框架 sensitive-新版本0.0.2-深度拷贝,属性为对象和集合的支持
- LODOP中page-break-before:always给div分页
- Delphi文件目录操作(转载)
- cakephp 利用Pushapi扩展 进行app 消息推送
- iOS开发--提交应用Your binary is not optimized for iPhone 5