Oracle数据库表空间怎样恢复?

5个月前 (10-16 08:31)阅读3回复0
zaibaike
zaibaike
  • 管理员
  • 注册排名1
  • 经验值211885
  • 级别管理员
  • 主题42377
  • 回复0
楼主

  用户表空间

错误: 在启动数据库时呈现ORA-01157,ORA-01110或操做系统级错误例如ORA-07360,在封闭数据库(利用shutdown normal或shutdown immediate) 时将招致错误ORA -01116,ORA-01110以及操做系统级错误ORA-07368

处理,以下有两种处理计划:

1。

  用户的表空间能够被随便地重建

即比来导出的对象是可用的或表空间中的对象能够被随便地重建等。在那种情况下,最简单的办法是offline并删除该数据文件,删除表空间并重建表空间以及所有的对象。

svrmgrl> startup mount

svrmgrl> alter database datafile filename offline drop;

svrmgrl> alter database open;

svrmgrl> drop tablespace tablespace_name including contents;

重建表空间及所有对象。

2。用户的表空间不克不及够被随便地重建

在大大都情况下,重建表空间是不成能及太辛苦的工做。办法是倒备份及做介量恢复。若是您的系统运行在NOARCHIVELOG形式下,则只要丧失的数据。在online redo log中方可被恢复,步调如下:

1)Restore the lost datafile from a backup

2)svrmgrl> startup mount

3)svrmgrl> select v1。

  group#,member,sequence#,first_change#

> from v$log v1,v$logfile v2

> where v1。group#=v2。group#;

4)若是数据库运行在NOARCHIVELOG形式下则:

svrmgrl> select file#,change# from v$recover_file;

若是 CHANGE# 大于最小的FIRST_CHANGE#则数据文件能够被恢复。

若是 CHANGE# 小于最小的FIRST_CHANGE#则数据文件不成恢复。 恢复比来一 次的全备份或接纳计划一

5)svrmgrl> recover datafile filename;

6)确认恢复胜利

7)svrmgrl> alter database open resetlogs;

3。

  只读表空间无需做介量恢复,只要将备份恢复即可。独一的破例是:

表空间在最初一次备份后被改为read-write 形式

表空间在最初一次备份后被改为read-only 形式

在那种情况下,均需停止介量恢复。

0
回帖

Oracle数据库表空间怎样恢复? 期待您的回复!

取消