Oracle 控制文件损坏解决方案

故障一:丢失(损坏)一个控制文件

前台报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:(干净或非干净方式关闭数据库)

使用完好的控制文件复制(替换)重命名丢失(损坏)的控制文件;

故障二:两个控制文件版本不一致

(1)一个控制文件正常,另一个控制文件来源于其他备份或其他数据库的控制文件;

前台报错:ORA-00214:control file '/../../control01.ctl' version xxx inconsistent with file '/../../control02.ctl' version yyy;

解决方案:(干净或非干净方式关闭数据库)

用高版本的控制文件替换低版本的控制文件;

(2) 两个控制文件均是来自不同时间的备份(都低于当前版本)

前台报错:ORA-00214:control file '/../../control01.ctl' version xxx inconsistent with file '/../../control02.ctl' version yyy;

ORA-01207:file is more recent than control file - old control file

解决方案:(干净方式关闭数据库)

用高版本的控制文件替换低版本的控制文件,后可以正常mount数据库,但是无法open数据库,需要手动创建控制文件(alter database backup to trace as '\..\..\cc.tcl'),重新生成控制文件(noresetlogs方式),之后可以正常open数据库;

解决方案:(非干净方式关闭数据库)

非干净关闭(数据库异常断电),数据库启动时需要介质恢复(recover database),恢复成功后可以正常打开数据库;

故障三:两个控制文件全部损坏,非当前日志文件丢失(或损坏)

报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:(干净方式关闭数据库)

因为有日志文件丢失,以NORESETLOGS方式手动创建控制文件时报错,只能以RESETLOGS方式创建控制文件;创建控制文件成功后,数据库自动mount,执行alter database open resetlogs;可以正常启动数据库;

解决方案:(非干净方式关闭数据库)

如果数据库之前是以不干净的方式(abort/断电)关闭的,open resetlogs数据库之前需要进行介质恢复,

recover database using backup controlfie;

由于resetlogs方式创建控制文件,导致日志序列号重新开始,自动恢复时不会自动使用当前日志文件,需要手动指定具体的日志文件;

例如:D:\app_10.2.0.4\chen_datafile\redo01.log或D:\app_10.2.0.4\chen_datafile\redo03.log

进行介质恢复,介质恢复成功后可以通过alter database open resetlogs方式open数据库;

故障四:两个控制文件全部损坏,当前日志文件丢失(或损坏)

报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:

(干净方式关闭数据库)

因为有日志文件丢失,以NORESETLOGS方式手动创建控制文件时报错,只能以RESETLOGS方式创建控制文件;创建控制文件成功后,数据库自动mount,执行alter database open resetlogs;可以正常启动数据库;

解决方案:

(非干净方式关闭数据库)

如果数据库之前是以不干净的方式(abort/断电)关闭的,open resetlogs数据库之前需要进行介质恢复,

recover database using backup controlfie;

由于resetlogs方式创建控制文件,导致日志序列号重新开始,自动恢复时不会自动使用当前日志文件,需要手动指定具体的日志文件;

例如:D:\app_10.2.0.4\chen_datafile\redo01.log或D:\app_10.2.0.4\chen_datafile\redo03.log

进行介质恢复,但是数据库介质恢复所需的信息保存在丢失的当前日志文件中,导致介质恢复失败,只能通过隐含参数"*._allow_resetlogs_corruption=true"(alter system set "_allow_resetlogs_corruption"=true scope=spfile;)跳过一致性检查,才能open resetlogs数据库;

其中_allow_resetlogs_corruption参数可能会触发多个ORA-600错误;

(1)报错ORA-00600: internal error code, arguments: [2662],可通过_minimum_giga_scn跳过此BUG

(2)报错ORA-00600: internal error code, arguments: [kdsgrp1],具体原因需要查看trace文件,本次案例可以通过将undo管理方式由自动改成手动,跳过此BUG

*.undo_tablespace=SYSTEM

*.undo_management=MANUAL

具体解决故障过程如下:

故障一:丢失(损坏)一个控制文件

前台报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:使用完好的控制文件复制(替换)重命名丢失(损坏)的控制文件;


---通过删除控制文件control02.ctl模拟控制文件丢失

Sun May 29 14:56:12 2016

ALTER DATABASE   MOUNT

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL02.CTL'

ORA-27041: unable to open file

OSD-04002: 无法打开文件

O/S-Error: (OS 2) 系统找不到指定的文件。

ORA-205 signalled during: ALTER DATABASE   MOUNT...

Sun May 29 14:56:12 2016

MMNL started with pid=16, OS id=2476

---alert_orcl.log警告日志

---通过文本编辑二进制控制文件control02.ctl模拟控制文件损坏

Sun May 29 16:35:03 2016

ALTER DATABASE   MOUNT

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL01.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763140)

ORA-205 signalled during: ALTER DATABASE   MOUNT...

解决方案:用另一个控制文件进行恢复

故障二:两个控制文件版本不一致

(1)一个控制文件正常,另一个控制文件来源于其他备份或其他数据库的控制文件;

前台报错:ORA-00214:control file '/../../control01.ctl' version xxx inconsistent with file '/../../control02.ctl' version yyy;

解决方案:用高版本的控制文件替换低版本的控制文件;

本次案例可以将control02.ctl控制文件复制重命名control01.ctl替换原control01.ctl文件;

(2) 两个控制文件均是来自不同时间的备份;

前台报错:ORA-00214:control file '/../../control01.ctl' version xxx inconsistent with file '/../../control02.ctl' version yyy;

ORA-01207:file is more recent than control file - old control file

解决方案:用高版本的控制文件替换低版本的控制文件,后可以正常mount数据库,但是无法open数据库,需要手动创建控制文件(alter database backup to trace as '\..\..\cc.tcl'),重新生成控制文件(noresetlogs方式),之后可以正常open数据库;

 

controlfile1版本号较高,用controlfile1重命名controlfile2替换原controfile2文件;

Sun May 29 15:12:45 2016

Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\orcl\orcl\trace\orcl_m000_9636.trc:

ORA-00338: log 1 of thread 1 is more recent than control file

ORA-00312: online log 1 thread 1: 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

ORA-00338: log 1 of thread 1 is more recent than control file

ORA-00312: online log 1 thread 1: 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG'

 

解决方案:重建控制文件

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;

使用resetlogs,将导致redo logs里的内容丢失,并且所有的备份失效,当redo logs 损坏或从备份恢复控制文件的情况下,才使用resetlogs模式。通常情况下重建控制文件最好采用noresetlogs方式;

非干净关闭(数据库异常断电),数据库启动是需要介质恢复(recover database),恢复成功后可以正常打开数据库;

Sun May 29 15:42:59 2016

ALTER DATABASE   MOUNT

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL02.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763144)

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL01.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763144)

ORA-205 signalled during: ALTER DATABASE   MOUNT...

 

重建控制文件

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;

故障三:两个控制文件全部损坏,非当前日志文件丢失(或损坏)

报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:因为有日志文件丢失,以NORESETLOGS方式手动创建控制文件时报错,只能以RESETLOGS方式创建控制文件;创建控制文件成功后,数据库自动mount如果数据库之前是以干净的方式(immediate/normal)关闭的,执行alter database open resetlogs;可以正常启动数据库;

如果数据库之前是以不干净的方式(abort/断电)关闭的,open resetlogs数据库之前需要进行介质恢复,

recover database using backup controlfie;

由于resetlogs方式创建控制文件,导致日志序列号重新开始,自动恢复时不会自动使用当前日志文件,需要手动指定具体的日志文件;

例如:D:\app_10.2.0.4\chen_datafile\redo01.log或D:\app_10.2.0.4\chen_datafile\redo03.log

进行介质恢复,介质恢复成功后可以通过alter database open resetlogs方式open数据库;

编辑损坏两个控制文件,删除非当前日志文件redo03.log

Sun May 29 16:40:55 2016

ALTER DATABASE   MOUNT

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL02.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763144)

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL01.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763144)

ORA-205 signalled during: ALTER DATABASE   MOUNT...

Sun May 29 16:40:55 2016

MMNL started with pid=16, OS id=10652

手动创建控制文件(NORESETLOGS)

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;

Errors in file D:\APP\ADMINISTRATOR\diag\rdbms\orcl\orcl\trace\orcl_ora_7516.trc:

ORA-01565: error in identifying file 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'

ORA-27041: unable to open file

OSD-04002: 无法打开文件

O/S-Error: (OS 2) 系统找不到指定的文件。

ORA-1503 signalled during: CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

手动创建控制文件(RESETLOGS)

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;


故障四:两个控制文件全部损坏,当前日志文件丢失(或损坏)

报错:ORA-00205:error in identifying control file,check alert log for more info

解决方案:因为有日志文件丢失,以NORESETLOGS方式手动创建控制文件时报错,只能以RESETLOGS方式创建控制文件;创建控制文件成功后,数据库自动mount如果数据库之前是以干净的方式(immediate/normal)关闭的,执行alter database open resetlogs;可以正常启动数据库;

如果数据库之前是以不干净的方式(abort/断电)关闭的,open resetlogs数据库之前需要进行介质恢复,

recover database using backup controlfie;

由于resetlogs方式创建控制文件,导致日志序列号重新开始,自动恢复时不会自动使用当前日志文件,需要手动指定具体的日志文件;

例如:D:\app_10.2.0.4\chen_datafile\redo01.log或D:\app_10.2.0.4\chen_datafile\redo03.log

进行介质恢复,但是数据库介质恢复所需的信息保存在丢失的当前日志文件中,导致介质恢复失败,只能通过隐含参数"*._allow_resetlogs_corruption=true"(alter system set "_allow_resetlogs_corruption"=true scope=spfile;)跳过一致性检查,才能open resetlogs数据库;

其中_allow_resetlogs_corruption参数可能会触发多个ORA-600错误;

(1)报错ORA-00600: internal error code, arguments: [2662],可通过_minimum_giga_scn跳过此BUG

(2)报错ORA-00600: internal error code, arguments: [kdsgrp1],具体原因需要查看trace文件,本次案例可以通过将undo管理方式由自动改成手动,跳过此BUG

*.undo_tablespace=SYSTEM

*.undo_management=MANUAL

 

故障:两个控制文件全部损坏,当前日志文件丢失(或损坏)

解决方案:

Sun May 29 20:00:47 2016

ALTER DATABASE   MOUNT

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL02.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763139)

ORA-00210: cannot open the specified control file

ORA-00202: control file: 'D:\APP_10.2.0.4\CHEN_DATAFILE\CONTROL01.CTL'

ORA-27046: file size is not a multiple of logical block size

OSD-04012: 文件大小不匹配 (OS 12763140)

ORA-205 signalled during: ALTER DATABASE   MOUNT...

---手动创建控制文件(NORESETLOGS)

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;

---手动创建控制文件(RESETLOGS)

STARTUP NOMOUNT

CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS  NOARCHIVELOG

MAXLOGFILES 16

MAXLOGMEMBERS 3

MAXDATAFILES 100

MAXINSTANCES 8

MAXLOGHISTORY 2337

LOGFILE

GROUP 1 (

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01.LOG',

'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO01A.LOG'

) SIZE 50M BLOCKSIZE 512,

GROUP 2 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO02.LOG'  SIZE 50M BLOCKSIZE 512,

GROUP 3 'D:\APP_10.2.0.4\CHEN_DATAFILE\REDO03.LOG'  SIZE 50M BLOCKSIZE 512

DATAFILE

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSTEM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\SYSAUX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\USERS01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\EXAMPLE01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\CHEN02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX02.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\MHWZ01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA02A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\ISM01.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_DATA01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\NNC_INDEX01A.DBF',

'D:\APP_10.2.0.4\CHEN_DATAFILE\UNDOTBS01A.DBF'

CHARACTER SET ZHS16GBK

;


---Windows环境下,如果cmd中存在"?",乱码问题,可以设置客户端字符集

或者set NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

转载自:

http://blog.itpub.net/29785807/viewspace-2108945/

Oracle 控制文件损坏解决方案的更多相关文章

  1. oracle 控制文件损坏处理

    一, 故障模拟 控制文件损坏 发现关闭不了 强制关闭   故障恢复   发现已经执行到mont阶段,因为这个不依靠控制文件 进入整段日志 cd /u01/app/oracle/diag/rdbms/o ...

  2. Oracle控制文件操作

    控制文件是连接instance和 database的纽带.记录了database的结构信息. 控制文件是1个2进制文件.记录的是当前database的状态. 控制文件可以有多个,在参数文件中通过con ...

  3. oracle控制文件问题

    下午时连接数据库突然发现连不上了,监听报错找不到服务,于是登录数据库所在服务器,查看监听状态,oracle:lsnrctl status 监听状态正常,登入数据库查看[oracle@frkdb1 ~] ...

  4. RAC环境下控制文件损坏重建过程

    处理过程参考了: https://blogs.oracle.com/Database4CN/entry/%E5%A6%82%E4%BD%95%E9%87%8D%E5%BB%BArac%E7%9A%84 ...

  5. oracle 控制文件的重建

    目录 oracle 控制文件的重建 NORESETLOGS RESETLOGS oracle 控制文件的重建 不到最后时刻,如三个控制文件都已损坏,又没有控制文件的备份.还是不要重建控制文件,处理不好 ...

  6. oracle 控制文件多路复用

    网上有很多关于控制文件的操作,我大概看了下.有很多都是炒来炒去转来转去.下面以自己理解和操作为例来对oracle的控制文件进行下介绍. 首先介绍下控制文件 在oralce数据库中,控制文件是一个很小的 ...

  7. Oracle - 各类文件损坏处理办法(附实验步骤)

    一.概述 本文将给大家介绍oracle各类文件损坏的现象和应对策略,请注意所有的恢复都是基于有备份的情况,所以请开启数据库的日常备份.文章将从以下文件展开 a. 密码文件 b. 参数文件 c. 控制文 ...

  8. Oracle控制文件

    一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等 ...

  9. Oracle 控制文件(CONTROLFILE)

    一.Oracle 控制文件 为二进制文件,初始化大小由CREATE DATABASE指定,可以使用RMAN备份 记录了当前数据库的结构信息,同时也包含数据文件及日志文件的信息以及相关的状态,归档信息等 ...

随机推荐

  1. MySQL事务原理浅析

    前言​ 因为自己对数据的可靠性,可用性方面特别感兴趣,所以在MySQL事务方面看了很多资料,也看了很多博客,所以想到自己也写一篇博客整理整理自己所学内容,尽量用自己的语言解释得通俗易懂. 事务经典场景 ...

  2. 基于openfire的IM即时通讯软件开发

    openfire:http://www.igniterealtime.org/ Xmpp:http://xmpp.org/ IOS(xmppframework):https://github.com/ ...

  3. Python虚拟环境virtualenv的安装与使用详解(转)

    virtualenv参考:https://www.jb51.net/article/114933.htm virtualenvwrapper参考:https://www.jianshu.com/p/7 ...

  4. Java8新特性 - 并行流与串行流

    并行流就是把一个内容分成多个数据块,并用不同的线程分别处理每个数据块的流. Java8中将并行进行了优化,我们可以很容易的对数据进行并行操作.Stream API可以声明性地通过parallel()和 ...

  5. RabbitMQ 应用二

    在应用一中,基本的消息队列使用已经完成了,在实际项目中,一定会出现各种各样的需求和问题,RabbitMQ内置的很多强大机制和功能会帮助我们解决很多的问题,下面就一个一个的一起学习一下. 消息响应机制 ...

  6. 爬虫相关--requests库

    requests的理想:HTTP for Humans 一.八个方法 相比较urllib模块,requests模块要简单很多,但是需要单独安装: 在windows系统下只需要在命令行输入命令 pip ...

  7. VBA用户自定义函数(十五)

    函数是一组可重复使用的代码,可以在程序中的任何地方调用.这消除了一遍又一遍地编写相同的代码的需要.这使程序员能够将一个大程序划分成许多小的可管理的功能模块. 除了内置函数外,VBA还允许编写用户定义的 ...

  8. Python:GeoJson格式的多边形裁剪Tiff影像并计算栅格数值

    JSON是通过键值对表示数据对象的一种格式,其全称为JavaScript Object Notation,它采用完全独立于编程语言的文本格式来存储和表示数据,轻量级.简洁清晰的层次结构.容易解析等特点 ...

  9. Traceback (most recent call last): File "../zubax_chibios/tools/make_boot_descriptor.py", line 251

    出现如下错误: Traceback (most recent call last): File "../zubax_chibios/tools/make_boot_descriptor.py ...

  10. 3D Experience — 产品协同研发平台

    随着产品复杂程度的提升,市场竞争愈加激烈,基于模型的正向研发已经作为有效的应对手段被广泛接受.但研发流程中仍然存在复杂功能架构定义困难.多方案难以权衡.多系统难以联合仿真,仿真效率低,验证不充分等问题 ...