Re: crsctl check resource on Rac

  • From: Jure Bratina <jure.bratina@xxxxxxxxx>
  • To: mvshelton@xxxxxxxxxxxxx
  • Date: Thu, 13 Mar 2014 17:27:23 +0100

Others on the list will probably know better the reason for this, but for
now maybe these two references:

1) Expert Oracle RAC 12c:
To manage a database, it is advisable to use the srvctl command. While it
is possible to manage databases as Clusterware objects using crsctl
commands, you should try to use the srvctl command whenever possible. The
srvctl command provides an additional layer of security and avoids
unnecessary activity in the Clusterware owner account.

2) MOS Doc ID 1053147.1:
Srvctl and crsctl are used to manage clusterware resources.  The general
rule is to use srvctl for whatever resource management you can.  Crsctl
should only be used for things that you cannot do with srvctl (like start
the cluster).

Regards,
Jure Bratina


On Thu, Mar 13, 2014 at 4:55 PM, <mvshelton@xxxxxxxxxxxxx> wrote:

> I had a disk group on a node in a RAC cluster go in the intermediate state
> which prevented srvctl from starting the database because there was a
> dependency on the diskgroup.  To resolve the issue I ran a crsctl check
> resource ora.DBFS_DG.dg  which resolved the issue and then the database was
> able to start just fine through srvctl.
>
> My question is in the oracle documentation it says not to run crsctl check
> resource on an ora  resource. Why is that?
>
> *From 11.2 documentation see notes in bold *
>
> crsctl check resource
> Use the crsctl check resource command to initiate the check action inside
> the
> application-specific agent of a particular resource. Oracle Clusterware
> only provides
> output if something prevents the system from issuing the check request,
> such as a bad
> resource name.
>
> Usage Notes
> ■ You must have read and execute permissions on the specified resources to
> check
> them
> ■* Do not use this command for any resources with names that begin with
> ora *
> *because these resources are Oracle resources*
> ■ If this command is successful, it only means that a check was issued; it
> does not
> mean the CHECK action has been completed
>
>
> *What I did and results:*
>
> oracle@thx2db01 trace]$ crsctl stat res -t
>
> --------------------------------------------------------------------------------
> NAME           TARGET  STATE        SERVER                   STATE_DETAILS
>
> --------------------------------------------------------------------------------
> Local Resources
>
> --------------------------------------------------------------------------------
> ora.DATA_THX2.dg
>                ONLINE  ONLINE       thx2db01
>                ONLINE  ONLINE       thx2db02
> ora.DBFS_DG.dg
>                ONLINE  INTERMEDIATE thx2db01                 CHECK TIMED
> OUT
>                ONLINE  ONLINE       thx2db02
>
> [oracle@thx2db01 trace]$ crsctl check resource ora.DBFS_DG.dg
>
> [oracle@thx2db01 trace]$ crsctl stat res -t
>
> --------------------------------------------------------------------------------
> NAME           TARGET  STATE        SERVER                   STATE_DETAILS
>
> --------------------------------------------------------------------------------
> Local Resources
>
> --------------------------------------------------------------------------------
> ora.DATA_THX2.dg
>                ONLINE  ONLINE       thx2db01
>                ONLINE  ONLINE       thx2db02
> ora.DBFS_DG.dg
>                ONLINE  ONLINE       thx2db01
>                ONLINE  ONLINE       thx2db02
>

Other related posts: