楼主: zhbforce

操作系统所在磁盘崩溃,如何恢复Oracle数据库?

[复制链接]
论坛徽章:
30
授权会员
日期:2005-10-30 17:05:33管理团队成员
日期:2011-05-07 01:45:08迷宫蛋
日期:2011-06-11 20:28:09ITPUB十周年纪念徽章
日期:2011-11-01 16:20:282012新春纪念徽章
日期:2012-01-04 11:50:442012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:23
11#
发表于 2005-3-4 17:42 | 只看该作者
怎么不考虑考虑借用第三方软件BACKUP呢?

我使用的是VERITAS BACKUP EXEC,效果不错的,连运行中的OS都能直接恢复回去

使用道具 举报

回复
论坛徽章:
27
授权会员
日期:2005-10-30 17:05:33管理团队成员
日期:2011-05-07 01:45:082012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:362012新春纪念徽章
日期:2012-02-13 15:11:36优秀写手
日期:2013-12-18 09:29:13马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14
12#
发表于 2005-3-4 18:06 | 只看该作者

Re: 操作系统所在磁盘崩溃,如何恢复Oracle数据库?

最初由 zhbforce 发布
[B]一直有一个问题,在几乎所有的教材与课本中都没有找到,就是如果Oracle的控制文件、日志文件、数据文件等都完好无损,但是操作系统所在的硬盘烧掉或者系统被病毒感染需要重装系统,如果恢复数据库到崩溃的那一点上。

我有一个自己考虑出来的办法,不知道行不行? 就是重装操作系统后,按照原样的Oracle再安装一遍数据库软件并创建一个名称完全相同的数据库,然后关掉进程,将数据库进行restore。不知道行不行? [/B]


不需要创建一个名称完全相同的数据库(你的数据库没有损坏,最多只是非正常关机造成shutdown abort,需要instance recovery而已)

你要做的只是给他一个instance来开启他
如果是Unix,给个init.ora
如果是windows, 还需要注册服务

使用道具 举报

回复
论坛徽章:
3
授权会员
日期:2005-11-10 08:36:21ITPUB元老
日期:2005-11-10 08:36:01会员2006贡献徽章
日期:2006-04-17 13:46:34
13#
发表于 2005-3-4 18:11 | 只看该作者
最初由 zhbforce 发布
[B]对了,还有,对数据库的restore支持跨平台吗?
比如说把windows2000 上的9i系统的文件拷贝到linux上的9i系统中? [/B]

这个不行,但imp/exp可以

使用道具 举报

回复
论坛徽章:
3
ITPUB北京2009年会纪念徽章
日期:2009-02-09 11:42:452010数据库技术大会纪念徽章
日期:2010-05-13 09:34:232010系统架构师大会纪念
日期:2010-09-03 16:39:57
14#
 楼主| 发表于 2005-3-4 21:18 | 只看该作者
>>>如果是windows, 还需要注册服务
我之所以说要建立一个同名的数据库系统,就是因为我不知道怎样在windows中创建服务(类似OracleServiceDBNAME),感觉需要通过Oracle的建库过程才可以完成这项操作。 还有,不知这样恢复的话是否要求操作系统的配置与先前相比完全相同,比如IP地址等。

此外,数据库名称不一样的话,可以恢复成功吗? 控制文件中难道没有存储数据库的名称吗?

使用道具 举报

回复
论坛徽章:
3
ITPUB北京2009年会纪念徽章
日期:2009-02-09 11:42:452010数据库技术大会纪念徽章
日期:2010-05-13 09:34:232010系统架构师大会纪念
日期:2010-09-03 16:39:57
15#
 楼主| 发表于 2005-3-4 21:22 | 只看该作者
最初由 so狗 发布
[B]1楼的,其实你的假设等同于:
有一个Oracle的完全的备份(完好可用的),现在把它移植到另外一台os和数据库版本一样的环境
不用建库,直接用日志恢复你的库,就可以打开了 [/B]


请简单说说具体方法,如何不用建库就使用日志来进行库的恢复?

使用道具 举报

回复
论坛徽章:
168
马上加薪
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-01-04 11:49:54蜘蛛蛋
日期:2011-12-05 16:08:56ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41设计板块每日发贴之星
日期:2011-07-22 01:01:02ITPUB官方微博粉丝徽章
日期:2011-06-30 12:30:16管理团队成员
日期:2011-05-07 01:45:082011新春纪念徽章
日期:2011-01-25 15:42:562011新春纪念徽章
日期:2011-01-25 15:42:33
16#
发表于 2005-3-4 21:29 | 只看该作者
Step 1
保证原有数据库数据文件在原来的位置.
     
Step 2
需要的话修改初始化参数文件
路径 : %ORACHE_HOME%/<SID>/pfile/init<SID>.ora
                                                                                
Step 3
创建windows服务
oradim -delete -sid <sid>
oradim -new -sid <sid> -pfile <%ORACHE_HOME%/<SID>/pfile/init<SID>.ora> -startmode m

Step 4
配置监听器

Step 5
使用REGEDIT创建字符串变量ORACLE_SID为数据库的ORACLE_SID

Step 6
启动监听器/数据库
lsnrctl>start
c:>set ORACLE_SID=simis
sql>startup

使用道具 举报

回复
论坛徽章:
3
操作系统板块每日发贴之星
日期:2005-05-04 01:01:45行业板块每日发贴之星
日期:2005-10-19 01:02:42会员2006贡献徽章
日期:2006-04-17 13:46:34
17#
发表于 2005-3-4 23:20 | 只看该作者
请问在Oracle 10G (Windows 2000 Server )上怎样做?

最初由 husthxd 发布
[B]Step 1
保证原有数据库数据文件在原来的位置.
     
Step 2
需要的话修改初始化参数文件
路径 : %ORACHE_HOME%/<SID>/pfile/init<SID>.ora
                                                                                
Step 3
创建windows服务
oradim -delete -sid <sid>
oradim -new -sid <sid> -pfile <%ORACHE_HOME%/<SID>/pfile/init<SID>.ora> -startmode m

Step 4
配置监听器

Step 5
使用REGEDIT创建字符串变量ORACLE_SID为数据库的ORACLE_SID

Step 6
启动监听器/数据库
lsnrctl>start
c:>set ORACLE_SID=simis
sql>startup [/B]

使用道具 举报

回复
论坛徽章:
3
ITPUB北京2009年会纪念徽章
日期:2009-02-09 11:42:452010数据库技术大会纪念徽章
日期:2010-05-13 09:34:232010系统架构师大会纪念
日期:2010-09-03 16:39:57
18#
 楼主| 发表于 2005-3-5 11:17 | 只看该作者
To husthxd:
多谢!听君一席话,胜读泛泛书,经验之谈,值得收藏!

使用道具 举报

回复
论坛徽章:
7
数据库板块每日发贴之星
日期:2005-06-22 01:01:25数据库板块每日发贴之星
日期:2006-01-17 01:02:21数据库板块每日发贴之星
日期:2006-02-09 01:02:22会员2006贡献徽章
日期:2006-04-17 13:46:34会员2007贡献徽章
日期:2007-09-26 18:42:10ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44生肖徽章2007版:猴
日期:2008-01-02 17:35:53
19#
发表于 2005-3-5 15:16 | 只看该作者
   可以從新建立一個和以前一樣數據庫名的數據庫﹐然后在干掉﹐把備份的數據庫文件給考進去﹐但要注意
1  密碼文件要換

2 控制文件干點

使用道具 举报

回复
论坛徽章:
168
马上加薪
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:10:582012新春纪念徽章
日期:2012-01-04 11:49:54蜘蛛蛋
日期:2011-12-05 16:08:56ITPUB十周年纪念徽章
日期:2011-11-01 16:19:41设计板块每日发贴之星
日期:2011-07-22 01:01:02ITPUB官方微博粉丝徽章
日期:2011-06-30 12:30:16管理团队成员
日期:2011-05-07 01:45:082011新春纪念徽章
日期:2011-01-25 15:42:562011新春纪念徽章
日期:2011-01-25 15:42:33
20#
发表于 2005-3-6 12:22 | 只看该作者
最初由 ocpmi 发布
[B]请问在Oracle 10G (Windows 2000 Server )上怎样做?

[/B]


基本上一样的.
如果原有数据库数据文件不在原来的位置上,可以mount数据库后用alter database修改数据文件的路径.

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表