oracle asm 删除diskgroup,How to drop ASM DiskGroup in RAC? (DISKGROUP删除后db资源显示OFFLINE)...

11.2.0.4 rac 2nodes

$ crs_stat -t

Name Type Target State Host

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

ora.CRS.dg ora....up.type ONLINE ONLINE node1

ora.DATAVG.dg ora....up.type ONLINE ONLINE node1

ora.FRADG.dg ora....up.type ONLINE OFFLINE

ora....ER.lsnr ora....er.type ONLINE ONLINE node1

ora....N1.lsnr ora....er.type ONLINE ONLINE node2

ora.asm ora.asm.type ONLINE ONLINE node1

ora.cvu ora.cvu.type ONLINE ONLINE node1

ora.db.db ora....se.type ONLINE OFFLINE

ora.gsd ora.gsd.type OFFLINE OFFLINE

ora....network ora....rk.type ONLINE ONLINE node1

ora....SM1.asm application ONLINE ONLINE node1

ora....E1.lsnr application ONLINE ONLINE node1

ora.node1.gsd application OFFLINE OFFLINE

ora.node1.ons application ONLINE ONLINE node1

ora.node1.vip ora....t1.type ONLINE ONLINE node1

ora....SM2.asm application ONLINE ONLINE node2

ora....E2.lsnr application ONLINE ONLINE node2

ora.node2.gsd application OFFLINE OFFLINE

ora.node2.ons application ONLINE ONLINE node2

ora.node2.vip ora....t1.type ONLINE ONLINE node2

ora.oc4j ora.oc4j.type ONLINE ONLINE node1

ora.ons ora.ons.type ONLINE ONLINE node1

ora....ry.acfs ora....fs.type ONLINE ONLINE node1

ora.scan1.vip ora....ip.type ONLINE ONLINE node2

$ crsctl stat res -t

——————————————————————————–

NAME TARGET STATE SERVER STATE_DETAILS

Cluster Resources

——————————————————————————–

...

ora.db.db

1 OFFLINE OFFLINE Instance Shutdown

2 OFFLINE OFFLINE Instance Shutdown

...

symptom:

to chose sqlplus “drop diskgroup”. however,the diskgroup that dropped is still listed as a resource. , Actually, the DB is open still, check alert log

ora-00313,ora-00312 ora-17503, ora-15001

The alert log output online log write fails , and friend told me For some reason directly deleted an ASM DiskGroup(FRADG) by someone. Fortunately, the current online logfile group had 2 member distributed in two DiskGroup, so the DB does not Crash.

Solution:

SELECT GROUP#, STATUS, MEMBER

FROM V$LOGFILE

WHERE STATUS='INVALID';

To drop the log file members in had drop diskgroup(FRADG).

e.g.

ALTER DATABASE DROP LOGFILE MEMBER '+FRADG/db/onlinelog/group_2.258.861051483';

Note:

if throw ORA-01609: log 4 is the current log for thread 2 – cannot drop members error,

just switch online logfile manually using following command and try again:

alter system switch logfile;

alter system checkpoint;

# add log member to a exists log file group

ALTER DATABASE ADD LOGFILE MEMBER ‘+DATAVG’ TO GROUP 2;

Then look back the Cluster Resource Issue

at first ,we try to start res db manually using srvctl .

$ srvctl start database -d db

PRCR-1079 : Failed to start resource ora.db.db

CRS-5017: The resource action "ora.FRADG.dg start" encountered the following error:

ORA-15032: not all alterations performed

ORA-15017: diskgroup "FRADG" cannot be mounted

ORA-15063: ASM discovered an insufficient number of disks for diskgroup "FRADG"

checked the dependency for the database resource

$ crsctl status resource ora.db.db -f

...

START_DEPENDENCIES=hard(ora.DATAVG.dg,ora.FRADG.dg) weak(type:ora.listener.type,global:type:ora.scan_listener.type,uniform:ora.ons,global:ora.gns) pullup(ora.DATAVG.dg,ora.FRADG.dg)

START_TIMEOUT=600

STATE_CHANGE_TEMPLATE=

STOP_DEPENDENCIES=hard(intermediate:ora.asm,shutdown:ora.DATAVG.dg,shutdown:ora.FRADG.dg)

STOP_TIMEOUT=600

...

Solution:

Since ASM diskgroup FRADG has been physically dropped. We should to remove FRADG resource from CRS start/stop dependency for database resource ora.db.db.

Cleanup Diskgroup Cluster resources

$su - root

Remove start dependency and stop dependency

$ srvctl modify database -d db -a "DATAVG"

$ crsctl status resource ora.db.db -f |grep DEPENDENCIES

Tip:

START and STOP DEPENDENCIES for DG FRADG are removed now

Finally delete the DG resoure

$ srvctl disable diskgroup -g FRADG

$ srvctl remove diskgroup -g FRADG –f

How to drop asm groups in RAC? sqlplus in asm, asmca, EM. either ones will work.

A FAQ in OTN

Question then is, is there one command that I can run which will do both? drop the diskgroup AND as a RAC resource.

If you use SQLPLUS to drop Diskgroup you must to use "srvctl remove diskgroup -g" to remove diskgroup from OCR.

If you use ASMCA one step remove both.

No, there is no one command to do it.... but is easy with 4 command.

e.g:

oracle@node1 > sqlplus / as sysasm

SQL> sqlplus / as sysasm

SQL> ! srvctl status diskgroup -g DATA

Disk Group DATA is running on node1,node2,node3

SQL> ! srvctl stop diskgroup -g DATA -n node2,node3

SQL> DROP DISKGROUP DATA;

SQL > ! srvctl remove diskgroup -g DATA

On release 11.2.0.2, after drop a diskgroups ASM is not releasing file descriptors on the raw devices.

Document 4693355.8 states that this problem (Bug:4693355 & Bug:7225720) is fixed on release 11.2.0.1.0, but the problem persists on release 11.2.0.2.0. Even if DROP DISKGROUP or DISMOUNT DISK GROUP scenarios.

Note that the forced disk group dismount will cause all datafiles in that database to go offline, which means they will need recovery (and restore if I drop disk group PLAY)

Summary:

Database&ASM diskgroup resource open/close dependency is ASM Auto Maintenance, but some special cases need we to cleanup Diskgroup Cluster resources manually. When you delete DISKGROUP, we must ensure that there is no DB in use.

打赏

8732971891f4ba05583674ca6b8145ac.png微信扫一扫,打赏作者吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值