关于‘_datafile_write_errors_crash_instance = FALSE’的验证

这次验证分别oracle 11.2.0.2 RAC与oracle 11.2.0.4 RAC中进行验证。

隐藏参数‘_datafile_write_errors_crash_instance’是在Oracle 11.2.0.1开始导入的,

主要的机能是在,数据文件(sysytem以外表空间)I/O读写错误被发现时,对实例的down进行管理。

Oracle 11.2.0.1 的初始值是

_datafile_write_errors_crash_instance = FALSE

数据文件(sysytem以外表空间)I/O读写错误被发现时,在归档模式下,发生错误的数据文件

被OFFLINE,实例不会down。


Oracle 11.2.0.2开始初始值变成TRUE

_datafile_write_errors_crash_instance = TRUE

因为I/O错误,数据文件读写失败被发现时,ORA-63999错误出力,实例down。


但是,在我的验证环境重新验证之后,发现在Oracle 11.2.0.2 RAC环境与Oracle 11.2.0.3 RAC环境中

就算这个隐藏参数=FALSE,数据库也会被down。

可是,在Oracle 11.2.0.4 RAC环境中,就不会发生这个现象。只有发生错误的数据文件被OFFLINE,

其它数据文件可以使用,实例不会发生任何问题。

实例再启动后,对指定的数据文件进行recover datafile与alter database datafile‘’ONLINE。


验证:

(客户验证环境为日语系统)

--验证环境准备

SQL> conn use1/pwdora

接続されました。


SQL> create table tal01 (id number,t01 varchar2(20)) tablespace user2;


表が作成されました。


SQL> declare

 2  temp varchar2(20):='aaa';

 3  i number;

 4  begin

 5    for i in 1..1000 loop

 6      insert into tal01 (id,t01) values (i,temp);

 7    end loop;

 8  end;

 9  /


PL/SQLプロシージャが正常に完了しました。


SQL> commit;


コミットが完了しました。


SQL> alter system switch logfile;


システムが変更されました。


SQL> conn / as sysdba

接続されました。

SQL> select

  x.ksppinm name,

  y.ksppstvl value,

  y.ksppstdf isdefault,

  decode(bitand(y.ksppstvf,2),2,'TRUE','FALSE') isadj

  from

  sys.x$ksppi x,

  sys.x$ksppcv y

  where

  x.inst_id = userenv('Instance') and

  y.inst_id = userenv('Instance') and

  x.indx = y.indx and

   x.ksppinm='_datafile_write_errors_crash_instance';  2    3    4    5    6    

7    8    9   10   11   12   13


NAME

--------------------------------------------------------------------------------

VALUE

--------------------------------------------------------------------------------

ISDEFAULT                   ISADJ

--------------------------- ---------------

_datafile_write_errors_crash_instance

FALSE

FALSE                       FALSE



SQL> exit

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing optionsとの接続が切断されました。


--1.磁盘组强制dismount

[grid@ol655v11rac1 ~]$ sqlplus / as sysasm


SQL*Plus: Release 11.2.0.4.0 Production on 金 12月 13 00:28:21 2013


Copyright (c) 1982, 2013, Oracle.  All rights reserved.




Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Real Application Clusters and Automatic Storage Management options

に接続されました。

SQL> alter diskgroup CRS2 dismount force;


Diskgroup altered.


SQL> exit

Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit

Production

With the Real Application Clusters and Automatic Storage Management options


[grid@ol655v11rac2 ~]$ sqlplus / as sysasm


SQL*Plus: Release 11.2.0.4.0 Production on Fri Dec 13 00:28:57 2013


Copyright (c) 1982, 2013, Oracle.  All rights reserved.



Connected to:

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Real Application Clusters and Automatic Storage Management options


SQL> alter diskgroup CRS2 dismount force;


Diskgroup altered.


SQL>


[grid@ol655v11rac1 ~]$ crsctl status res -t

--------------------------------------------------------------------------------

NAME           TARGET  STATE        SERVER                   STATE_DETAILS

--------------------------------------------------------------------------------

Local Resources

--------------------------------------------------------------------------------

ora.CRS1.dg

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.CRS2.dg

              OFFLINE OFFLINE      ol655v11rac1  ★

              OFFLINE OFFLINE      ol655v11rac2 ★

ora.DATA.dg

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.LISTENER.lsnr

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.LISTENER_TEST.lsnr

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.REC.dg

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.asm

              ONLINE  ONLINE       ol655v11rac1             Started

              ONLINE  ONLINE       ol655v11rac2             Started

ora.gsd

              OFFLINE OFFLINE      ol655v11rac1

              OFFLINE OFFLINE      ol655v11rac2

ora.net1.network

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

ora.ons

              ONLINE  ONLINE       ol655v11rac1

              ONLINE  ONLINE       ol655v11rac2

--------------------------------------------------------------------------------

Cluster Resources

--------------------------------------------------------------------------------

ora.LISTENER_SCAN1.lsnr

     1        ONLINE  ONLINE       ol655v11rac2

ora.cvu

     1        OFFLINE OFFLINE

ora.oc4j

     1        OFFLINE OFFLINE

ora.ol655v11rac1.vip

     1        ONLINE  ONLINE       ol655v11rac1

ora.ol655v11rac2.vip

     1        ONLINE  ONLINE       ol655v11rac2

ora.racdb.db

     1        ONLINE  ONLINE       ol655v11rac1             Open

     2        ONLINE  ONLINE       ol655v11rac2             Open

ora.scan1.vip

     1        ONLINE  ONLINE       ol655v11rac2


--2.对于强制dismount的磁盘组管理的表空间的表,进行插入操作时,错误发生

[oracle@ol655v11rac1 ~]$ sqlplus / as sysdba


SQL*Plus: Release 11.2.0.4.0 Production on 金 12月 13 00:30:50 2013


Copyright (c) 1982, 2013, Oracle.  All rights reserved.




Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

に接続されました。

SQL> conn use1/pwdora

接続されました。

SQL> insert into tal01(id,t01) values (1234,4321);

insert into tal01(id,t01) values (1234,4321)

           *

行1でエラーが発生しました。:

ORA-01115: ファイル(ブロック番号)からの読取りI/Oエラーが発生しました。 ORA-01110:

データファイル10: '+CRS2/racdb/datafile/user2.257.834020569'

ORA-15078: ASMディスクグループが強制ディスマウントされました


SQL> conn / as sysdba

接続されました。


SQL> alter system checkpoint;


システムが変更されました。


SQL> exit

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing optionsとの接続が切断されました。

[oracle@ol655v11rac1 ~]$


--DBを再起動する

[grid@ol655v11rac1 ~]$ crsctl stop res ora.racdb.db

CRS-2673: 'ora.racdb.db'('ol655v11rac1')の停止を試行しています

CRS-2673: 'ora.racdb.db'('ol655v11rac2')の停止を試行しています

CRS-2677: 'ora.racdb.db'('ol655v11rac1')の停止が成功しました

CRS-2677: 'ora.racdb.db'('ol655v11rac2')の停止が成功しました

[grid@ol655v11rac1 ~]$ crsctl start res ora.racdb.db

CRS-2672: 'ora.CRS2.dg'('ol655v11rac1')の起動を試行しています

CRS-2672: 'ora.CRS2.dg'('ol655v11rac2')の起動を試行しています

CRS-2676: 'ora.CRS2.dg'('ol655v11rac2')の起動が成功しました

CRS-2672: 'ora.racdb.db'('ol655v11rac2')の起動を試行しています

CRS-2676: 'ora.CRS2.dg'('ol655v11rac1')の起動が成功しました

CRS-2672: 'ora.racdb.db'('ol655v11rac1')の起動を試行しています

CRS-2676: 'ora.racdb.db'('ol655v11rac2')の起動が成功しました

CRS-2676: 'ora.racdb.db'('ol655v11rac1')の起動が成功しました


--3.双节点的实例再启动后,V$datafile确认

[oracle@ol655v11rac1 ~]$ sqlplus / as sysdba


SQL*Plus: Release 11.2.0.4.0 Production on 金 12月 13 00:34:42 2013


Copyright (c) 1982, 2013, Oracle.  All rights reserved.




Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,

Data Mining and Real Application Testing options

に接続されました。

SQL> select NAME,STATUS from v$datafile;


NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/system.290.825681213

SYSTEM


+DATA/racdb/datafile/sysaux.291.825681213

ONLINE


+DATA/racdb/datafile/undotbs1.292.825681215

ONLINE



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/users.293.825681215

ONLINE


+DATA/racdb/datafile/undotbs2.298.825681663

ONLINE


+DATA/racdb/datafile/users2.302.829645083

ONLINE



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/users3.303.829699671

ONLINE


+DATA/racdb/datafile/users6.304.829700059

ONLINE


+CRS2/racdb/datafile/user2.256.833962583

RECOVER



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+CRS2/racdb/datafile/user2.257.834020569

RECOVER



10行が選択されました。


SQL> recover datafile '+CRS2/racdb/datafile/user2.256.833962583';

ORA-00279: 変更9796286(12/13/2013 00:00:14で生成)にはスレッド2が必要です ORA-00289:

検討すべきログファイル:/oracle/app/oracle/product/11.2.0.4/dbs/arch2_232_82568

1360.dbf

ORA-00280: 変更9796286(スレッド2)は順序番号232に存在します。



ログの指定: {=suggested | filename | AUTO | CANCEL}

auto

ログが適用されました。

メディアリカバリが完了しました。

SQL> recover datafile '+CRS2/racdb/datafile/user2.257.834020569';

ORA-00279: 変更9796305(12/13/2013 00:00:14で生成)にはスレッド2が必要です ORA-00289:

検討すべきログファイル:/oracle/app/oracle/product/11.2.0.4/dbs/arch2_232_82568

1360.dbf

ORA-00280: 変更9796305(スレッド2)は順序番号232に存在します。



ログの指定: {=suggested | filename | AUTO | CANCEL}

auto

ログが適用されました。

メディアリカバリが完了しました。

SQL> select count(*) from use1.tal01;

select count(*) from use1.tal01

                         *

行1でエラーが発生しました。:

ORA-00376: ファイル10を読み込むことはできません。 ORA-01110:

データファイル10: '+CRS2/racdb/datafile/user2.257.834020569'



SQL> select NAME,STATUS from v$datafile;


NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/system.290.825681213

SYSTEM


+DATA/racdb/datafile/sysaux.291.825681213

ONLINE


+DATA/racdb/datafile/undotbs1.292.825681215

ONLINE



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/users.293.825681215

ONLINE


+DATA/racdb/datafile/undotbs2.298.825681663

ONLINE


+DATA/racdb/datafile/users2.302.829645083

ONLINE



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+DATA/racdb/datafile/users3.303.829699671

ONLINE


+DATA/racdb/datafile/users6.304.829700059

ONLINE


+CRS2/racdb/datafile/user2.256.833962583

OFFLINE



NAME

--------------------------------------------------------------------------------

STATUS

---------------------

+CRS2/racdb/datafile/user2.257.834020569

OFFLINE



10行が選択されました。


--4.数据文件ONLINE后,对象表可以正常访问

SQL> alter database datafile '+CRS2/racdb/datafile/user2.256.833962583' online;


データベースが変更されました。


SQL> alter database datafile '+CRS2/racdb/datafile/user2.257.834020569' online;


データベースが変更されました。


SQL> select count(*) from use1.tal01;


 COUNT(*)

----------

     1000


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26552866/viewspace-1063441/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/26552866/viewspace-1063441/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值