Oracle控制文件备份恢复 resetlogs方式

本文介绍了当Oracle数据库的控制文件丢失时,如何通过已备份的控制文件信息来恢复,并使用resetlogs选项重启数据库。首先,通过`ALTER DATABASE BACKUP CONTROLFILE TO TRACE`命令备份控制文件,然后在一致性停库后重建控制文件,最后利用`CREATE CONTROLFILE`语句指定数据库参数和日志文件路径。最后,使用`ALTER DATABASE OPEN RESETLOGS`打开数据库,完成恢复过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

alter databasebackup controfile to trace as '/bk/col.sql';

一致性停库破坏日志文件和控制文件

启动数据库

SQL> startup

ORACLE instancestarted.

 

Total SystemGlobal Area  314572800 bytes

Fixed Size                  1219136 bytes

VariableSize             113247680 bytes

DatabaseBuffers          192937984 bytes

RedoBuffers                7168000 bytes

ORA-00205: errorin identifying control file, check alert log for more info

因为没有控制文件所以会出205错误

我们根据备份的控制文件信息重新创建控制文件

CREATECONTROLFILE REUSE DATABASE "ORCL2" RESETLOGS  ARCHIVELOG

    MAXLOGFILES 16

    MAXLOGMEMBERS 3

    MAXDATAFILES 100

    MAXINSTANCES 8

    MAXLOGHISTORY 292

LOGFILE

  GROUP 1'/u01/tiger/oradata/orcl2/redo01.log' SIZE 50M,

  GROUP 2'/u01/tiger/oradata/orcl2/redo02.log' SIZE 50M,

  GROUP 3'/u01/tiger/oradata/orcl2/redo03.log' SIZE 50M

DATAFILE

  '/u01/tiger/oradata/orcl2/system01.dbf',

  '/u01/tiger/oradata/orcl2/tiger.dbf',

  '/u01/tiger/oradata/orcl2/sysaux01.dbf',

  '/u01/tiger/oradata/orcl2/users01.dbf',

  '/u01/tiger/oradata/orcl2/undotbs02.dbf',

  '/u01/tiger/oradata/orcl2/undotbs01',

  '/u01/tiger/oradata/orcl2/tiger01.dbf'

CHARACTER SETZHS16GBK

;

因为之前也没有了redo日志文件所以重启数据库的时候用resetlogs参数

alter databaseopen resetlogs

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值