ORACLE服务器异常断电,控制文件故障的处理步骤

简介: ORACLE
这里只是简单的记录操作步骤,以做备忘。本步骤由同事邹启健(问心)完成


一、版本


SQL> select * from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1 .0 - Production
PL/SQL Release 11.2.0.1 .0 - Production CORE    11.2.0.1 


二、故障
SQL> startup mount;
ORACLE 例程已经启动。


Total System Global Area 1046224896 bytes
Fixed Size                  1379212 bytes
Variable Size             708838516 bytes
Database Buffers          331350016 bytes
Redo Buffers                4657152 bytes
数据库装载完毕。
SQL> alter dabase open;
alter dabase open
      *
第 1 行出现错误:
ORA-00940: 无效的 ALTER 命令

SQL> alter database open;
alter database open
*
第 1 行出现错误:
ORA-01122: 数据库文件 1 验证失败
ORA-01110: 数据文件 1: 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF'
ORA-01207: 文件比控制文件更新 - 旧的控制文件


三、处理步骤


SQL> alter database backup controlfile to trace as 'G:\ctl1.txt';


数据库已更改。


SQL> shutdown immediate;
ORA-01109: 数据库未打开

已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup nomount;
ORACLE 例程已经启动。


Total System Global Area 1046224896 bytes
Fixed Size                  1379212 bytes
Variable Size             708838516 bytes
Database Buffers          331350016 bytes
Redo Buffers                4657152 bytes
SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG
  2      MAXLOGFILES 16
  3      MAXLOGMEMBERS 3
  4      MAXDATAFILES 100
  5      MAXINSTANCES 8
  6      MAXLOGHISTORY 292
  7  LOGFILE
  8    GROUP 1 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG'  SIZE 50M BLOCKSIZ
E 512,
  9    GROUP 2 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG'  SIZE 50M BLOCKSIZ
E 512,
 10    GROUP 3 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG'  SIZE 50M BLOCKSIZ
E 512
 11  DATAFILE
 12    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF',
 13    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF',
 14    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF',
 15    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF',
 16    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF'
 17  CHARACTER SET ZHS16GBK;
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS  NOARCHIVELOG
*
第 1 行出现错误:
ORA-01503: CREATE CONTROLFILE ??
ORA-01229: data file 2 is inconsistent with logs
ORA-01110: data file 2: 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF'
我们使用resetlogs进行重建避开和redo logs的校验

SQL> CREATE CONTROLFILE REUSE DATABASE "ORCL" RESETLOGS  NOARCHIVELOG
  2      MAXLOGFILES 16
  3      MAXLOGMEMBERS 3
  4      MAXDATAFILES 100
  5      MAXINSTANCES 8
  6      MAXLOGHISTORY 292
  7  LOGFILE
  8    GROUP 1 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG'  SIZE 50M BLOCKSIZ
E 512,
  9    GROUP 2 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO02.LOG'  SIZE 50M BLOCKSIZ
E 512,
 10    GROUP 3 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO03.LOG'  SIZE 50M BLOCKSIZ
E 512
 11  DATAFILE
 12    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF',
 13    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF',
 14    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF',
 15    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF',
 16    'G:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF'
 17  CHARACTER SET ZHS16GBK;
控制文件已创建。

SQL> alter database mount;
alter database mount
*
第 1 行出现错误:
ORA-01100: ??????

SQL> alter session set nls_language='american';--中文字符集显示乱码,需要更改session字符集
Session altered.
SQL> alter database mount;
alter database mount
*
ERROR at line 1:
ORA-01100: database already mounted

SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR at line 1:
ORA-01194: file 1 needs more recovery to be consistent
ORA-01110: data file 1: 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF'

进行recover数据库,需要使用resetlogs和手动指定归档日志这里其实就是redolog中的一个

SQL> recover database;
ORA-00283: recovery session canceled due to errors
ORA-01610: recovery using the BACKUP CONTROLFILE option must be done

SQL> recover database using backup controlfile;
ORA-00279: change 28088746 generated at 12/16/2017 20:32:45 needed for thread 1
ORA-00289: suggestion :
G:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2017_12_19\O1_MF_1_572_%U_.ARC
ORA-00280: change 28088746 for thread 1 is in sequence #572

Specify log: {=suggested | filename | AUTO | CANCEL}

ORA-00308: cannot open archived log
'G:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2017_12_19\O1_MF_1_572_%U_.ARC'
ORA-27041: unable to open file
OSD-04002: ????????????
O/S-Error: (OS 2) ??????????????????????

SQL> archive log list;
Database log mode              No Archive Mode
Automatic archival             Disabled
Archive destination            USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence     0
Current log sequence           0
SQL> recover database using backup controlfile;
ORA-00279: change 28088746 generated at 12/16/2017 20:32:45 needed for thread 1
ORA-00289: suggestion :
G:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2017_12_19\O1_MF_1_572_%U_.ARC
ORA-00280: change 28088746 for thread 1 is in sequence #572

Specify log: {=suggested | filename | AUTO | CANCEL}
G:\app\Administrator\oradata\orcl\REDO01.LOG
ORA-00310: archived log contains sequence 571; sequence 572 required
ORA-00334: archived log: 'G:\APP\ADMINISTRATOR\ORADATA\ORCL\REDO01.LOG'

SQL> recover database using backup controlfile;
ORA-00279: change 28088746 generated at 12/16/2017 20:32:45 needed for thread 1
ORA-00289: suggestion :
G:\APP\ADMINISTRATOR\FLASH_RECOVERY_AREA\ORCL\ARCHIVELOG\2017_12_19\O1_MF_1_572_%U_.ARC
ORA-00280: change 28088746 for thread 1 is in sequence #572

Specify log: {=suggested | filename | AUTO | CANCEL}
G:\app\Administrator\oradata\orcl\REDO02.LOG 这里指定是redolog中的一个
Log applied.
Media recovery complete.
SQL> alter database open;
alter database open
*
ERROR at line 1:

ORA-01589: must use RESETLOGS or NORESETLOGS option for database open

SQL> alter database open resetlogs;
Database altered.


SQL> select file_name from dba_data_files;

FILE_NAME
--------------------------------------------------------------------------------
G:\APP\ADMINISTRATOR\ORADATA\ORCL\EXAMPLE01.DBF
G:\APP\ADMINISTRATOR\ORADATA\ORCL\USERS01.DBF
G:\APP\ADMINISTRATOR\ORADATA\ORCL\UNDOTBS01.DBF
G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSAUX01.DBF
G:\APP\ADMINISTRATOR\ORADATA\ORCL\SYSTEM01.DBF

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.

Total System Global Area 1046224896 bytes
Fixed Size                  1379212 bytes
Variable Size             708838516 bytes
Database Buffers          331350016 bytes
Redo Buffers                4657152 bytes
数据库装载完毕。
数据库已经打开。

至此恢复完成

相关文章
|
27天前
|
XML Java 数据库连接
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
struts+hibernate+oracle+easyui实现lazyout组件的简单案例——hibernate的config文件(hibernate.cfg.xml)
10 0
|
1月前
|
弹性计算 Ubuntu 搜索推荐
幻兽帕鲁Palworld搭建联机服务器教程,新手搭建流程步骤
随着《幻兽帕鲁》这款开放世界生存游戏的持续火热,越来越多的玩家希望搭建属于自己的游戏服务器,与好友一同探险。那么,怎样才能轻松搭建《幻兽帕鲁》服务器呢?接下来,就跟随我们的脚步,简单几步助你实现梦想!
220 0
|
27天前
|
存储 数据挖掘 Windows
服务器数据恢复—异常断电导致raid信息丢失的数据恢复案例
由于机房多次断电导致一台服务器中raid阵列信息丢失。该阵列中存放的是文档,上层安装的是Windows server操作系统,没有配置ups。 因为服务器异常断电重启后,raid阵列可以正常使用,所以未引起管理员的注意。后续出现的多次异常断电导致raid报错,服务器无法找到存储设备,进入raid管理模块进行任何操作都会导致操作系统死机。管理员尝试多次重启服务器,故障依旧。
|
1月前
|
人工智能 弹性计算 监控
在阿里云服务器上搭建自己的人工智能,可以按照以下步骤进行:
【2月更文挑战第22天】在阿里云服务器上搭建自己的人工智能,可以按照以下步骤进行:
30 6
|
1月前
|
弹性计算 Ubuntu Linux
2024年Palworld/幻兽帕鲁联机服务器搭建方法分享,详细步骤
想要和好友一起畅游幻兽帕鲁的世界吗?别再为联机而烦恼,因为搭建自己的服务器其实并不难!今天,就为大家带来一篇超详细的幻兽帕鲁服务器搭建教程,保证让你轻松上手!
20 0
|
1月前
|
弹性计算
玩转幻兽帕鲁部署:2024年幻兽帕鲁Palworld服务器怎么搭建开服,详细步骤教程
您是不是已经厌倦了《幻兽帕鲁》中漫长的加载时间和不稳定的公共服务器?好消息是,现在您可以拥有自己的专属服务器了!而且,搭建过程非常简单,仅需轻点三次鼠标,3秒就能轻松开服。接下来,就让我们一起看看如何轻松搭建《幻兽帕鲁》的专属服务器吧!
|
1月前
|
弹性计算 安全 定位技术
2024年幻兽帕鲁Palworld游戏服务器怎么搭建流程,步骤详解
近期,随着《幻兽帕鲁》的风靡,越来越多的玩家渴望能拥有自己的专属游戏服务器,与好友在这个充满奇幻色彩的世界中畅游。好消息是,阿里云为了满足广大玩家的需求,特别推出了全程自动化的《幻兽帕鲁》服务器搭建服务。这一服务究竟有多简单?即便是从未接触过服务器设置的小白玩家,也能在几分钟内轻松搞定!
|
1月前
|
弹性计算 安全 数据安全/隐私保护
阿里云上搭建Palworld幻兽帕鲁专用服务器详细步骤
对于《幻兽帕鲁》的忠实粉丝来说,与好友一起联机冒险无疑是游戏中的一大乐趣。但如何快速、简便地搭建一个稳定的联机服务器,却常常成为玩家们的难题。今天,我将为大家带来一篇实用指南,教你如何利用阿里云轻松搭建《幻兽帕鲁》专用服务器,让你和好友在短短3秒内就能开启联机之旅!
|
1月前
|
弹性计算 Linux Windows
阿里云上自建Palworld/幻兽帕鲁服务器教程,新手小白搭建步骤
随着幻兽帕鲁/Palworld的风靡,越来越多的小伙伴渴望拥有属于自己的游戏服务器,以便随时随地与好友组队冒险。今天,就为大家带来一篇简单易懂的自建服务器教程,让你轻松从新手小白晋升为服务器搭建高手!
|
1月前
|
弹性计算 搜索推荐 定位技术
2024年阿里云上搭建《幻兽帕鲁》专用服务器,详细步骤
随着《幻兽帕鲁》这款游戏的持续火热,越来越多的玩家开始追求更加个性化的游戏体验,搭建自己的专属服务器成为了不少玩家的首选。但很多玩家可能会因为技术门槛而犹豫不决。现在,好消息来了!阿里云为《幻兽帕鲁》的玩家们推出了全程自动化的服务器搭建服务,即使你是零技术基础,也能轻松拥有自己的服务器。

推荐镜像

更多