欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Oracle控制文件丢失了怎么办?

程序员文章站 2022-05-12 20:33:51
Oracle的控制文件丢失怎么办 如果有文本备的份控制文件就可以使用文本备份的控制文件 SQL> ALTER DATABASE BACKUP CONTROLFILE...

Oracle的控制文件丢失怎么办

如果有文本备的份控制文件就可以使用文本备份的控制文件

SQL> ALTER DATABASE BACKUP CONTROLFILE TO traceAS‘路径/文件名’;

SQL> alter database backup controlfile to trace as '/oracle/cont.txt';

在文本控制文件里面有这些内容,如果文本文件丢失了,启动不到mount状态就要使用下面这些语句,使用下面这些语句在SQL下面执行。

STARTUP NOMOUNT--由于控制文件丢失或者损害,数据库启动不到mount状态,可以先将数据库启动到nomount状态。

之后执行这些语句就会创建新的控制文件,如果redo文件没有损坏就使用NORESETLOGS

如果损坏了就使用RESETLOGS。

CREATE CONTROLFILE REUSE DATABASE "ORADB" NORESETLOGS ARCHIVELOG

MAXLOGFILES 20

MAXLOGMEMBERS 5

MAXDATAFILES 100

MAXINSTANCES 1

MAXLOGHISTORY 292

LOGFILE

GROUP 1 (

'/u01/app/oracle/oradata/oradb/redo01.log',

'/oracle/redobackup/redo02.log'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 '/u01/app/oracle/oradata/oradb/redo02.log' SIZE 50M BLOCKSIZE 512,

GROUP 3 '/u01/app/oracle/oradata/oradb/redo03.log' SIZE 50M BLOCKSIZE 512,

GROUP 4 '/oracle/redobackup/redo01.log' SIZE 20M BLOCKSIZE 512

-- STANDBY LOGFILE

DATAFILE

'/u01/app/oracle/oradata/oradb/system01.dbf',

'/u01/app/oracle/oradata/oradb/sysaux01.dbf',

'/u01/app/oracle/oradata/oradb/undotbs01.dbf',

'/u01/app/oracle/oradata/oradb/user01.dbf',

'/u01/app/oraclermants.dbf'

CHARACTER SET ZHS16GBK;

注意使用上面的方法要在数据库结构没有改变,比如没有新增加表空间和数据文件。