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. Luogu5307 [COCI2019] Mobitel 【数论分块】【递推】

    题目分析: 对于向上取整我们总有,$\lceil \frac{\lceil \frac{n}{a} \rceil}{b} \rceil = \lceil \frac{n}{a*b} \rceil$这个 ...

  2. Angular 学习笔记 (cdk focus monitor 和一些 focus tabindex 的基础)

    更新 : 2019-12-22 focusInitialElementWhenReady  我们经常会调用到这个方法, 它的逻辑是这样 先看有没有 cdkFocusInitial 有的就 focus ...

  3. PG SQL funcation

    create extension IF NOT EXISTS "uuid-ossp" ; --select uuid_generate_v4(); --select current ...

  4. 命令行参数 && json 协议 && 自定义 error 类型

    命令行参数 在写代码的时候,在运行程序做一些初始化操作的时候,往往会通过命令行传参数到程序中,那么就会用到命令行参数 例如,指定程序运行的模式和级别: go run HTTPServer.go --m ...

  5. MySQL库的相关操作

    再熟悉一下Mysql库.表.记录的基本操作. 库 增 create database userinfo1 charset utf8; 查 show databases; show create dat ...

  6. 【转载】网站配置Https证书系列(三):IIS网站设置Http链接直接跳转Https安全连接

    Http链接请求是以明文的方式传输,在传输的过程中很容易被篡改数据,一个典型的例子就是运营商的网络劫持注入广告信息等,而Https请求则是安全加密的请求,报文数据以密文的形式进行传输.当IIS网站配置 ...

  7. php协议任意文件读取

    php://filter/read=convert.base64-encode/resource=index.php

  8. ios数组倒序

    比如有一个数组: NSArray *arr = @["]; 倒过来排序: arr = [[arr reverseObjectEnumerator] allObjects]; NSMutabl ...

  9. Javascript的异步与单线程

    一.前言 我们都知道,javasript是一个单线程的语言:所谓单线程就是同一时间不能做两件事情,两段代码不能同时执行:因为这种机制,才避免了两段js同时对一个DOM节点进行渲染的冲突.但是也会因此产 ...

  10. 布隆过滤算法体会(BlooomFilter)

    在一个m位的位数组里,一个字符串经过k次hash随机分布到k个位置. http://www.cnblogs.com/aspnethot/articles/3442813.html 布隆filter数据 ...