Oracle误删Undo后恢复

来源:互联网 发布:美国合法公开海关数据 编辑:程序博客网 时间:2024/05/17 09:00
undo 表空间丢失之恢复(ORA-01548)
误删undo表空间,或者undo表空间无限增大最后需要删除 undo表空间,解决方法


1. $ startup
  ORACLE 例程已经启动。
   Total System Global Area   264241152 bytes
   Fixed Size                1296208 bytes
   Variable Size              92276912 bytes
   Database Buffers       163577856 bytes
   Redo Buffers             7090176 bytes
  数据库装载完毕。
   数据库已经打开。
  
   已用时间:   00: 00: 00.04
  
2. $ shutdown abort
   ORACLE 例程已经关闭。


3. 删除D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\UNDOTBS01.DBF
4. $ startup
   ORACLE 例程已经启动。
   Total System Global Area   264241152 bytes
   Fixed Size                1296208 bytes
   Variable Size              92276912 bytes
   Database Buffers       163577856 bytes
   Redo Buffers             7090176 bytes
   数据库装载完毕。
   ORA-01157: 无法标识/锁定数据文件 2 - 请参阅 DBWR 跟踪文件
   ORA-01110: 数据文件 2: 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\UNDOTBS01.DBF'


5. $ alter database datafile 'D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\UNDOTBS01.DBF' offline 


drop;
   数据库已更改。
   已用时间:   00: 00: 00.07
  
   $ alter database open;
   数据库已更改。


   已用时间:   00: 00: 08.12
6. $ select FILE_NAME, BYTES from dba_data_files;                                           


               
   FILE_NAME                                                       BYTES                   


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


            
   D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\USERS01.DBF           106168320                   


            
   D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\SYSAUX01.DBF       262144000                   


            
   D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\UNDOTBS01.DBF                                     


            
   D:\ORACLE\PRODUCT\10.2.0\ORADATA\HUICHE\SYSTEM01.DBF       681574400                   


            


   已用时间:   00: 00: 00.12
7. $ create undo tablespace undotbs02 datafile 'D:\ORACLE\PRODUCT\10.2.0


\ORADATA\HUICHE\UNDOTBS02.DBF' size 25m;
   表空间已创建。  
   已用时间:   00: 00: 01.32
8. $ show parameter undo
   NAME                               TYPE                VALUE
   ------------------------------------ ---------------------- ------------------------------
   undo_management                   string                 AUTO
   undo_retention                       integer             900
   undo_tablespace                   string                 UNDOTBS1
9. $ alter system set undo_tablespace=undotbs02;
   系统已更改。
   已用时间:   00: 00: 00.10


10. $ select segment_name,status from dba_rollback_segs;
   SEGMENT_NAME                                              STATUS
   ------------------------------------------------------------ -----------------------------


-------------------------------
   SYSTEM                                                    ONLINE
   _SYSSMU10$                                                 NEEDS RECOVERY
   _SYSSMU9$                                                 NEEDS RECOVERY
   _SYSSMU8$                                                 NEEDS RECOVERY
   _SYSSMU7$                                                 NEEDS RECOVERY
   _SYSSMU6$                                                 NEEDS RECOVERY
   _SYSSMU5$                                                 NEEDS RECOVERY
   _SYSSMU4$                                                 NEEDS RECOVERY
   _SYSSMU3$                                                 NEEDS RECOVERY
   _SYSSMU2$                                                 NEEDS RECOVERY
   _SYSSMU1$                                                 NEEDS RECOVERY
   _SYSSMU20$                                                 ONLINE
   _SYSSMU19$                                                 ONLINE
   _SYSSMU18$                                                 ONLINE
   _SYSSMU17$                                                 ONLINE
   _SYSSMU16$                                                 ONLINE
   _SYSSMU15$                                                 ONLINE
   _SYSSMU14$                                                 ONLINE
   _SYSSMU13$                                                 ONLINE
   _SYSSMU12$                                                 ONLINE
   _SYSSMU11$                                                 ONLINE
  
   已选择21行。
  
   已用时间:   00: 00: 00.07
  
11. $ drop tablespace undotbs1 including contents and datafiles;
   drop tablespace undotbs1 including contents and datafiles
   *
   第 1 行出现错误:
   ORA-01548: 已找到活动回退段 '_SYSSMU1$', 终止删除表空间
  
  
   已用时间:   00: 00: 00.04






12. $ create pfile from spfile;  
  
   pfile 内容如下:
  
   huiche.__db_cache_size=163577856
   huiche.__java_pool_size=4194304
   huiche.__large_pool_size=4194304
   huiche.__shared_pool_size=83886080
   huiche.__streams_pool_size=0
  
   *.audit_file_dest='D:\oracle\product\10.2.0\admin\HUICHE\adump'
   *.background_dump_dest='D:\oracle\product\10.2.0\admin\HUICHE\bdump'
   *.compatible='10.2.0.3.0'
   *.control_files='D:\oracle\product\10.2.0


\oradata\HUICHE\control01.ctl','D:\oracle\product\10.2.0


\oradata\HUICHE\control02.ctl','D:\oracle\product\10.2.0\oradata\HUICHE\control03.ctl'
   *.core_dump_dest='D:\oracle\product\10.2.0\admin\HUICHE\cdump'
   *.db_block_size=8192
   *.db_cache_size=113246208
   *.db_domain='COM'
   *.db_file_multiblock_read_count=16
   *.db_name='HUICHE'
   *.db_recovery_file_dest='D:\oracle\product\10.2.0\flash_recovery_area'
   *.db_recovery_file_dest_size=4294967296
   *.dispatchers='(PROTOCOL=TCP) (SERVICE=HUICHEXDB)'
   *.java_pool_size=4194304
   *.job_queue_processes=10
   *.large_pool_size=4194304
   *.nls_language='SIMPLIFIED CHINESE'
   *.nls_territory='CHINA'
   *.open_cursors=300
   *.pga_aggregate_target=69206016
   *.processes=150
   *.remote_login_passwordfile='EXCLUSIVE'
   *.sga_max_size=262144000
   *.sga_target=264241152
   *.shared_pool_size=79691776
   *.streams_pool_size=0
   *.undo_management='auto'
   *.undo_tablespace='UNDOTBS02'
   *.user_dump_dest='D:\oracle\product\10.2.0\admin\HUICHE\udump'
   # 增加隐形参数
   _corrupted_rollback_segments=(_SYSSMU10$,_SYSSMU9$,_SYSSMU8$,_SYSSMU7$,_SYSSMU6$,_SYSSMU5


$,_SYSSMU4$,_SYSSMU3$,_SYSSMU2$,_SYSSMU1$)
   _offline_rollback_segments=true


13. $ startup pfile=D:\oracle\product\10.2.0\db_1\database\INIThuiche.ORA
   ORACLE 例程已经启动。
   Total System Global Area   264241152 bytes
   Fixed Size                1296208 bytes
   Variable Size              92276912 bytes
   Database Buffers       163577856 bytes
   Redo Buffers             7090176 bytes
   数据库装载完毕。
   数据库已经打开。
14. $ select segment_name,status from dba_rollback_segs ;
SEGMENT_NAME                                              STATUS
------------------------------------------------------------ ----------------------------


--------------------------------
SYSTEM                                                    ONLINE
_SYSSMU10$                                                 NEEDS RECOVERY
_SYSSMU9$                                                 NEEDS RECOVERY
_SYSSMU8$                                                 NEEDS RECOVERY
_SYSSMU7$                                                 NEEDS RECOVERY
_SYSSMU6$                                                 NEEDS RECOVERY
_SYSSMU5$                                                 NEEDS RECOVERY
_SYSSMU4$                                                 NEEDS RECOVERY
_SYSSMU3$                                                 NEEDS RECOVERY
_SYSSMU2$                                                 NEEDS RECOVERY
_SYSSMU1$                                                 NEEDS RECOVERY
_SYSSMU20$                                                 ONLINE
_SYSSMU19$                                                 ONLINE
_SYSSMU18$                                                 ONLINE
_SYSSMU17$                                                 ONLINE
_SYSSMU16$                                                 ONLINE
_SYSSMU15$                                                 ONLINE
_SYSSMU14$                                                 ONLINE
_SYSSMU13$                                                 ONLINE
_SYSSMU12$                                                 ONLINE
_SYSSMU11$                                                 ONLINE


已选择21行。


已用时间:   00: 00: 00.31
15. $ drop tablespace undotbs1 including contents and datafiles;
   表空间已删除。
   已用时间:   00: 00: 01.39
  
16. $ select segment_name,status from dba_rollback_segs;
   SEGMENT_NAME                                              STATUS
   ------------------------------------------------------------ -----------------------------


-------------------------------
   SYSTEM                                                    ONLINE
   _SYSSMU20$                                                 ONLINE
   _SYSSMU19$                                                 ONLINE
   _SYSSMU18$                                                 ONLINE
   _SYSSMU17$                                                 ONLINE
   _SYSSMU16$                                                 ONLINE
   _SYSSMU15$                                                 ONLINE
   _SYSSMU14$                                                 ONLINE
   _SYSSMU13$                                                 ONLINE
   _SYSSMU12$                                                 ONLINE
   _SYSSMU11$                                                 ONLINE
  
   已选择11行。
  
   已用时间:   00: 00: 00.04
17. $ show parameter undo
NAME                               TYPE                VALUE
------------------------------------ ---------------------- ------------------------------
undo_management                   string                 AUTO
undo_retention                       integer             900
undo_tablespace                   string                 UNDOTBS02
$ create spfile from pfile;


文件已创建。


已用时间:   00: 00: 00.12


18. $ shutdown immediate;
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
19. $ startup
ORACLE 例程已经启动。
Total System Global Area   264241152 bytes
Fixed Size                1296208 bytes
Variable Size              92276912 bytes
Database Buffers       163577856 bytes
Redo Buffers             7090176 bytes
数据库装载完毕。
数据库已经打开。
20. $ show parameter undo
NAME                               TYPE                VALUE
------------------------------------ ---------------------- ------------------------------
undo_management                   string                 MANUAL
undo_retention                       integer             900
undo_tablespace                   string                 UNDOTBS02
$ alter system set undo_management=auto scope=spfile;


系统已更改。


已用时间:   00: 00: 00.03 

0 0
原创粉丝点击