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. oracle如何保证数据一致性和避免脏读

      oracle通过undo保证一致性读和不发生脏读 1.不发生脏读2.一致性读3. 事务槽(ITL)小解 1.不发生脏读 例如:用户A对表更新了,没有提交,用户B对进行查询,没有提交的更新不能出现在 ...

  2. Burp Suite的安装与使用

    ​ Burp Suite是一个集成化的渗透测试工具,它集合了多种渗透测试组件,使我们自动化地或手工地能更好的完成对web应用的渗透测试和攻击.在渗透测试中,我们使用Burp Suite将使得测试工作变 ...

  3. python学习-40 生产者和消费者模型

    import time def buy(name): # 消费者 print('%s上街去买蛋' %name) while True: eggs=yield print('%s买了%s' %(name ...

  4. python读取文件行数和某行内容

    学习记录: python计算文件的行数和读取某一行内容的实现方法 - nkwy2012 - 博客园https://www.cnblogs.com/nkwy2012/p/6023710.html 文本文 ...

  5. 解决webpack4.x使用autoprefixer 无效

    安装 npm i webpck webpack-cli style-loader postcss-loader -D 配置 webpack.config.js module: { rules: [{ ...

  6. springboot_2

    1. 配置文件简介 spring boot使用一个全局配置文件:application.properties或者application.yml,放置在src/main/resources目录下或者类路 ...

  7. R_数据操作_高级_04

    数学函数: abs(x) 绝对值     sqrt(x) 平方根   ceiling(x) 放回不小于x的最小整数 floor(x) 不小于x的最大整数   trunc(x) 先0方向截取x的整数部分 ...

  8. js 单引号和双引号相互替换的实现方法

    1.双引号替换成单引号 var domo = JSON.stringify(address).replace(/\"/g,"'"); var a = {a:1,b:2}; ...

  9. Android笔记(六) Android中的组件

    一个软件可以吸引到用户,除了优秀的功能可以解决用户的问题之外,良好的用户界面也并不可少.一个软件的功能不管多么优秀,但是没有提供友好的界面来让用户操作,将很难吸引到最终用户. Android提供了大量 ...

  10. 快上车,react 入门拾遗

    最近朋友圈和微博都刷了一波杰伦的回忆杀–说好不哭,想想都9012了,在学习react如火如荼的路上,也不妨停下脚步来总结总结,朝花夕拾一下. 为了便于阐述,我们还是来段小明和禅师的故事吧. 小明在学习 ...