用户登录
用户注册

分享至

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

  • 作者: 柠檬少年小豆豆
  • 来源: 51数据库
  • 2021-11-04

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;

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

软件
前端设计
程序设计
Java相关