楼主: nyh

误删除了UNDO对应的文件,数据库起不来了怎么办

[复制链接]
论坛徽章:
1
生肖徽章2007版:狗
日期:2009-10-08 19:42:37
11#
发表于 2009-10-21 22:40 | 只看该作者
谢谢

使用道具 举报

回复
论坛徽章:
0
12#
 楼主| 发表于 2009-10-22 22:17 | 只看该作者

回复 #8 viadeazhu 的帖子

这个办法行不通

使用道具 举报

回复
论坛徽章:
0
13#
 楼主| 发表于 2009-10-22 22:18 | 只看该作者

回复 #6 viadeazhu 的帖子

我现在根本就open不了,所以也没法创新的undo表空间

使用道具 举报

回复
论坛徽章:
2
授权会员
日期:2005-10-30 17:05:33祖国60周年纪念徽章
日期:2009-10-09 08:28:00
14#
发表于 2009-10-22 22:44 | 只看该作者
先OPEN了再说吧

在INIT.ORA中加入_ALLOW_RESETLOGS_CORRUPTION=TRUE

SQL> RECOVER DATABASE UNTIL CANCEL USING BACKUP CONTROLFILE;
SQL> Cancel
SQL>ALTER DATABASE OPEN RESETLOGS;

使用道具 举报

回复
论坛徽章:
6
BLOG每日发帖之星
日期:2009-10-06 01:01:02ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51ITPUB9周年纪念徽章
日期:2010-10-08 09:28:53数据库板块每日发贴之星
日期:2010-12-06 01:01:01
15#
发表于 2009-10-22 23:22 | 只看该作者
原帖由 nyh 于 2009-10-22 22:18 发表
我现在根本就open不了,所以也没法创新的undo表空间


I tried, you can:

comment auto undo related parameter
add:
undo_management = manual
rollback_segments = (SYSTEM)  -- just like to create a new db, you can use this temporarily
Then:

offline your undo file
open you database         -> you can do this now
recreate your undo tablespace

使用道具 举报

回复
论坛徽章:
24
授权会员
日期:2006-05-06 22:39:09技术图书徽章
日期:2013-12-11 10:12:13技术图书徽章
日期:2013-12-11 10:12:48路虎
日期:2014-01-26 14:35:49技术图书徽章
日期:2014-07-30 14:36:51海蓝宝石
日期:2014-08-06 14:09:322014年世界杯参赛球队: 俄罗斯
日期:2014-08-22 13:57:242014系统架构师大会纪念章
日期:2014-09-11 13:40:07itpub13周年纪念徽章
日期:2014-09-28 10:55:55优秀写手
日期:2014-09-29 06:00:12
16#
发表于 2009-10-23 09:22 | 只看该作者
SQL> startup
ORACLE instance started.

Total System Global Area 3221225472 bytes
Fixed Size                  2087376 bytes
Variable Size             587204144 bytes
Database Buffers         2617245696 bytes
Redo Buffers               14688256 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 2 - see DBWR trace file
ORA-01110: data file 2: '/oracle/oradata/undotbs01.dbf'


SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/oracle/oradata/system01.dbf
/oracle/oradata/undotbs01.dbf
...
/oracle/oradata/system02.dbf
/oracle/oradata/sysaux02.dbf




SQL> alter database datafile '/oracle/oradata/undotbs01.dbf' offline drop;

SQL> alter database open;

SQL> CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE
  '/oracle/oradata/undotbs02.dbf' SIZE 110M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
ONLINE
RETENTION NOGUARANTEE
BLOCKSIZE 8K
FLASHBACK ON;

SQL> alter system set undo_tablespace=UNDOTBS2;

SQL> drop tablespace UNDOTBS1 including contents AND DATAFILES;

使用道具 举报

回复
论坛徽章:
113
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:512011新春纪念徽章
日期:2011-02-18 11:42:50现任管理团队成员
日期:2011-05-07 01:45:08ITPUB官方微博粉丝徽章
日期:2011-06-28 19:45:36蛋疼蛋
日期:2011-07-24 22:25:332012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25
17#
发表于 2009-10-23 09:43 | 只看该作者

回复 #12 nyh 的帖子

你看看11楼的例子不是行得通么。。。

使用道具 举报

回复
论坛徽章:
317
季节之章:春
日期:2012-06-20 17:38:14季节之章:夏
日期:2012-06-12 10:49:25季节之章:秋
日期:2012-06-12 10:49:25季节之章:冬
日期:2012-06-12 10:49:25马上有钱
日期:2014-06-16 15:59:19蓝色妖姬
日期:2012-05-19 11:02:10蓝色妖姬
日期:2012-06-12 11:21:48蓝色妖姬
日期:2012-06-12 11:21:48玉兔
日期:2012-07-27 11:00:12玉兔
日期:2012-08-05 10:00:09
18#
发表于 2009-10-23 09:45 | 只看该作者
原帖由 aiirii 于 2009-10-23 09:22 发表
SQL> startup
ORACLE instance started.

Total System Global Area 3221225472 bytes
Fixed Size                  2087376 bytes
Variable Size             587204144 bytes
Database Buffers         2617245696 bytes
Redo Buffers               14688256 bytes
Database mounted.
ORA-01157: cannot identify/lock data file 2 - see DBWR trace file
ORA-01110: data file 2: '/oracle/oradata/undotbs01.dbf'


SQL> select name from v$datafile;

NAME
--------------------------------------------------------------------------------
/oracle/oradata/system01.dbf
/oracle/oradata/undotbs01.dbf
...
/oracle/oradata/system02.dbf
/oracle/oradata/sysaux02.dbf




SQL> alter database datafile '/oracle/oradata/undotbs01.dbf' offline drop;

SQL> alter database open;

SQL> CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE
  '/oracle/oradata/undotbs02.dbf' SIZE 110M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
ONLINE
RETENTION NOGUARANTEE
BLOCKSIZE 8K
FLASHBACK ON;

SQL> alter system set undo_tablespace=UNDOTBS2;

SQL> drop tablespace UNDOTBS1 including contents AND DATAFILES;



这个是正解,我前两天刚遇到过一次同样的错误,也是这样解决的。

使用道具 举报

回复
论坛徽章:
15
ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44ITPUB9周年纪念徽章
日期:2010-10-08 09:28:52生肖徽章2007版:猴
日期:2009-11-13 09:58:46生肖徽章2007版:虎
日期:2009-03-10 21:13:28生肖徽章2007版:猪
日期:2009-03-04 17:45:47ITPUB北京2009年会纪念徽章
日期:2009-02-09 11:42:46生肖徽章2007版:猪
日期:2009-01-05 19:22:422009新春纪念徽章
日期:2009-01-04 14:52:28生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:牛
日期:2008-01-02 17:35:53
19#
发表于 2009-10-23 09:54 | 只看该作者

回复 #18 听海★蓝心梦 的帖子

不过我在最后一步删除undotbs1的时候报错了。

sys@baal> drop tablespace undotbs1 including contents and datafiles;
drop tablespace undotbs1 including contents and datafiles
*
第 1 行出现错误:
ORA-01548: 已找到活动回退段 '_SYSSMU1$', 终止删除表空间

使用道具 举报

回复
论坛徽章:
0
20#
发表于 2009-10-23 10:07 | 只看该作者
SQL> select segment_name,status,tablespace_name from dba_rollback_segs;


SEGMENT_NAME STATUS TABLESPACE_NAME

------------------------------ ---------------- ---------------

SYSTEM ONLINE SYSTEM

_SYSSMU2$ ONLINE UNDOTBS1

_SYSSMU3$ ONLINE UNDOTBS1

_SYSSMU4$ ONLINE UNDOTBS1

_SYSSMU5$ ONLINE UNDOTBS1

_SYSSMU6$ ONLINE UNDOTBS1

_SYSSMU7$ ONLINE UNDOTBS1

_SYSSMU8$ ONLINE UNDOTBS1

_SYSSMU9$ ONLINE UNDOTBS1

_SYSSMU10$ ONLINE UNDOTBS1

_SYSSMU21$ ONLINE UNDOTBS1

用上面的语句查出UNDO中的段。

然后在pfile 中加入
undo_management = manual
rollback_segments = (SYSTEM,_SYSSMU2$ ,...........)

最后
SQL> alter database datafile '/oracle/oradata/undotbs01.dbf' offline drop;

SQL> alter database open;

SQL> CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE
  '/oracle/oradata/undotbs02.dbf' SIZE 110M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED
ONLINE
RETENTION NOGUARANTEE
BLOCKSIZE 8K
FLASHBACK ON;

SQL> alter system set undo_tablespace=UNDOTBS2;

SQL> drop tablespace UNDOTBS1 including contents AND DATAFILES;

使用道具 举报

回复

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

本版积分规则 发表回复

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