姿姿霸霸~~!
贵在坚持!
BlogJava
首页
新文章
新随笔
聚合
管理
posts - 106, comments - 50, trackbacks - 0
手工恢复---只有数据文件损坏,非正常关闭/正常关闭,有数据文件的备份
1.先备份数据文件
SQL
>
select
file_name
,tablespace_name
from
dba_data_files;
FILE_NAME
TABLESPACE_NAME
--
---------------------------------------------------------- -----------------
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\DDTESTTBS02.DBF DDTEST
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\EXAMPLE01.DBF EXAMPLE
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\USERS01.DBF USERS
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\SYSAUX01.DBF SYSAUX
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\UNDOTBS01.DBF UNDOTBS1
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\SYSTEM01.DBF SYSTEM
SQL
>
alter
tablespace ddtest
begin
backup
;
表空间已更改。
SQL
>
alter
tablespace ddtest
end
backup
;
表空间已更改。
2.用UE将ddtest对应的数据文件破坏
3.直接shutdown abort,再startup
SQL
>
shutdown
abort;
ORACLE 例程已经关闭。
SQL
>
startup
ORACLE 例程已经启动。
Total System Global Area
612368384
bytes
Fixed Size
1250428
bytes
Variable Size
197135236
bytes
Database
Buffers
406847488
bytes
Redo Buffers
7135232
bytes
数据库装载完毕。
ORA
-
01157
: 无法标识
/
锁定数据文件
6
-
请参阅 DBWR 跟踪文件
ORA
-
01110
: 数据文件
6
:
'
D:\ORACLE\PRODUCT\10.2.0\ORADATA\SUREDD\DDTESTTBS02.DBF
'
SQL
>
4.查找需要恢复的数据文件
SQL
>
select
status
from
v$instance;
STATUS
--
----------
MOUNTED
SQL
>
select
*
from
v$recover_file;
FILE
# ONLINE ONLINE_ ERROR CHANGE# TIME
--
-------- ------- ------- ----------------------------------------------------------------- -------
6
ONLINE ONLINE
FILE
NOT
FOUND
0
SQL
>
select
*
from
v$
backup
;
FILE
# STATUS CHANGE# TIME
--
-------- ------------------ ---------- --------------
1
NOT
ACTIVE
0
2
NOT
ACTIVE
0
3
NOT
ACTIVE
0
4
NOT
ACTIVE
0
5
NOT
ACTIVE
0
6
FILE
NOT
FOUND
0
已选择6行。
SQL
>
edit
已写入
file
afiedt.buf
1
SELECT
D.NAME, T.NAME
AS
TABLESPACE_NAME
2
FROM
V$DATAFILE D, V$TABLESPACE T
3
WHERE
T.TS#
=
D.TS#
4
*
AND
D.
FILE
#
=
6
SQL
>
/
NAME
--
--------------------------------------------------------------------------------------------------
TABLESPACE_NAME
--
----------------------------
D:\ORACLE\PRODUCT\
10.2
.
0
\ORADATA\SUREDD\DDTESTTBS02.DBF
DDTEST
SQL
>
5.将备份的数据文件直接copy到原位置(因为此时为mount状态,所以可以直接copy,不用offline),再recover,再打开数据库。如果是打开的,(此时做了alter system checkpoint 也能使得表空间不可用),那就将对应的表空间先offline,再执行recover,执行完recover后,再将表空间online。
SQL
>
recover datafile
'
D:\ORACLE\PRODUCT\10.2.0\ORADATA\SUREDD\DDTESTTBS02.DBF
'
;
完成介质恢复。
SQL
>
alter
database
open
;
数据库已更改。
SQL
>
select
*
from
dd.t1;
ID NAME
--
-------- ----------
1
test1
2
test2
SQL
>
注:dd.t1这个表在ddtest这个表空间上
至此恢复完成.
posted on 2011-05-04 22:56
xrzp
阅读(362)
评论(0)
编辑
收藏
所属分类:
oracle-备份恢复
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
Chat2DB
C++博客
博问
管理
相关文章:
记这两天恢复数据库的一个过程
手工恢复---控制文件丢失但有备份,在线重做日志完好,数据文件丢失但有备份
手工创建controlfile时,noresetlogs和resetlogs的适用范围
手工恢复---控制文件全部丢失,在线重做日志丢失,数据文件还在
解决ORA-00600: 内部错误代码, 参数: [4194], [15], [8]
手工恢复---使用备份的控制文件,联机重做日志文件可用,数据文件可用
手工恢复---归档日志已经备份并被删除,再做之前的一些表空间恢复遇到的问题
手工恢复---控制文件全部丢失或损坏
手工恢复--某个控制文件损坏,但有好的控制文件可用
手工恢复---数据文件损坏,无备份,但有完整的归档日志
<
2011年5月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(4)
给我留言
查看公开留言
查看私人留言
随笔分类
db2(2)
JAVA(29)
js(9)
linux/unix(7)
oracle-asm(1)
oracle-rac(5)
oracle-优化(5)
oracle-基础(31)
oracle-备份恢复(16)
存储(2)
随笔档案
2012年4月 (1)
2011年11月 (2)
2011年10月 (13)
2011年9月 (1)
2011年8月 (2)
2011年7月 (2)
2011年6月 (5)
2011年5月 (16)
2011年4月 (3)
2011年1月 (1)
2010年12月 (8)
2010年7月 (1)
2010年6月 (3)
2010年5月 (3)
2010年1月 (1)
2009年9月 (1)
2009年4月 (3)
2009年3月 (1)
2008年10月 (2)
2008年9月 (1)
2008年8月 (3)
2008年7月 (1)
2008年4月 (1)
2008年3月 (1)
2008年2月 (1)
2007年7月 (2)
2007年6月 (1)
2007年5月 (7)
2007年4月 (1)
2007年3月 (2)
2007年1月 (12)
2006年12月 (1)
2006年10月 (3)
好友的blog
霸霸的blog
风风的BLOG
搜索
积分与排名
积分 - 116540
排名 - 500
最新评论
1. re: 解决ORA-00600: 内部错误代码, 参数: [4194], [15], [8][未登录]
谢谢,解决了大问题
--linda
2. re: aop拦截springmvc的action不成功!(已解决)
楼主最后还有用拦截器的方式解决的??????
spring mvc aop 不可以吗??????
--sql吧
3. re: 去除空格的js 和 使用正则表达式替换
dfasfdsa
-- fff fddd
4. re: 什么是table函数(收集)
也就是说,我好不容易达到了你2年前的水平
--Jcat
5. re: db2降低hwm(V9.7)
评论内容较长,点击标题查看
--刘邦
阅读排行榜
1. 解决ORA-30036:无法按8扩展段(18064)
2. 解决ORA-00600: 内部错误代码, 参数: [4194], [15], [8](9763)
3. 去除空格的js 和 使用正则表达式替换(8976)
4. aop拦截springmvc的action不成功!(已解决)(7656)
5. 判断一个JS对象是否为空(6733)
评论排行榜
1. aop拦截springmvc的action不成功!(已解决)(11)
2. 使用spring发送邮件(4)
3. 计算任何一天是星期几的算法(拿来主义)(3)
4. JAVA中日期的问题(3)
5. j2EE中的过滤器的用法(过滤乱码)(2)