This appendix describes how to administer Oracle Clusterware using the Oracle Clusterware Control (CRSCTL) utility.
Note:
Do not use CRSCTL commands on Oracle entities (such as resources, resource types, and server pools) that have names beginning with ora unless you are directed to do so by My Oracle Support. The Server Control utility (SRVCTL) is the correct utility to use on Oracle entities.This appendix includes the following topics:
CRSCTL is an interface between you and Oracle Clusterware, parsing and calling Oracle Clusterware APIs for Oracle Clusterware objects.
Oracle Clusterware 11g release 2 (11.2) introduces cluster-aware commands with which you can perform check, start, and stop operations on the cluster. You can run these commands from any node in the cluster on another node in the cluster, or on all nodes in the cluster, depending on the operation.
You can use CRSCTL commands to perform several operations on Oracle Clusterware, such as:
Starting and stopping Oracle Clusterware resources
Enabling and disabling Oracle Clusterware daemons
Checking the health of the cluster
Managing resources that represent third-party applications
Integrating Intelligent Platform Management Interface (IPMI) with Oracle Clusterware to provide failure isolation support and to ensure cluster integrity
Debugging Oracle Clusterware components
You can run clusterized commands on one node to perform operations on another node in the cluster. These are referred to as remote operations. This simplifies administration because, for example, you no longer have to log in to each node to check the status of the Oracle Clusterware on all of your nodes.
Clusterized commands are completely operating system independent; they rely on the OHASD (Oracle High Availability Services daemon). If this daemon is running, then you can perform remote operations, such as the starting, stopping, and checking the status of remote nodes.
Clusterized commands include the following:
crsctl check cluster
crsctl start cluster
crsctl stop cluster
The CRSCTL utility is located in the Grid_home/bin
directory. To run CRSCTL commands, type in crsctl
at the operating system prompt followed by the command and arguments, as shown in the following example:
crsctl stop crs
There are three categories of CRSCTL commands:
Those that you use in either the Oracle Real Application Clusters (Oracle RAC) environment or in the Oracle Restart environment
Those that you use in the Oracle RAC environment, only
Those that you use in the Oracle Restart environment, only
Many CRSCTL commands use the -f
option to force the command to run and ignore any checks.
For example, if you specify the force option for the crsctl stop resource
command on a resource that is running and has dependent resources that are also running, then the force option omits the error message and instead stops or relocates all the dependent resources before stopping the resource you reference in the command.
Do not use versions of CRSCTL earlier than 11g release 2 (11.2) to manage Oracle Clusterware 11g release 2 (11.2).
To print the help information for CRSCTL, use the following command:
crsctl -help
If you want help for a specific command, such as start
, then enter the command and append -help
to the end, as shown in the following example:
crsctl start -help
You can also use the abbreviations -h
or -?
(this option functions in Linux, UNIX, and Windows environments) instead of -help
.
Table E-1 lists the commands that are deprecated in Oracle Clusterware 11g release 2 (11.2) and their replacements that you can use to perform the same or similar functionality. These commands are not supported in an Oracle Restart environment:
Table E-1 Deprecated CRSCTL Commands and Replacements
Deprecated Command | Replacement Commands |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This section is separated into three categories of CRSCTL commands:
You can use the following commands in either the Oracle RAC or the Oracle Restart environments:
Use the crsctl add resource
command to register a resource to be managed by Oracle Clusterware. A resource could be an application process, a database, a service, a listener, and so on.
crsctl add resource resource_name -type resource_type [-file file_path | -attr "attribute_name=attribute_value,attribute_name=attribute_value,..."] [-i] [-f]
Table E-2 crsctl add resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
A short, descriptive name for the resource. |
-type resource_type
|
The type of resource that you are adding preceded by the |
-file file_path
|
Path name (either absolute or relative) for a text file containing line-separated attribute name-value pairs that define the resource. |
-attr "attribute_name= attribute_value |
You can specify attributes for a resource you are adding in two different ways:
|
-i |
If you specify |
-f |
Use the force option:
|
See Also:
Appendix B, "Oracle Clusterware Resource Reference" for more information about resources and resource attributesBoth the resource_name
and -type
resource_type
parameters are required. You can create an associated resource type using the crsctl add type
command.
Any user can create a resource but only clusterware administrators can create resources of type local_resource
or resources of type cluster_resource
that have SERVER_POOLS=*
.
Once a resource is defined, its ACL controls who can perform particular operations with it. The Oracle Clusterware administrator list is no longer relevant.
On Windows, a member of the Administrators group has full control over everything.
See Also:
"crsctl setperm resource" for more information about setting ACLsIf an attribute value for an attribute name-value pair contains commas, then the value must be enclosed in single quotation marks (''
).
Following is an example of an attribute file:
PLACEMENT=favored HOSTING_MEMBERS=node1 node2 node3 RESTART_ATTEMPTS@CARDINALITYID(1)=0 RESTART_ATTEMPTS@CARDINALITYID(2)=0 FAILURE_THRESHOLD@CARDINALITYID(1)=2 FAILURE_THRESHOLD@CARDINALITYID(2)=4 FAILURE_INTERVAL@CARDINALITYID(1)=300 FAILURE_INTERVAL@CARDINALITYID(2)=500 CHECK_INTERVAL=2 CARDINALITY=2
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources.
To register a VIP as a resource with Oracle Clusterware:
$ crsctl add resource app.appvip -type app.appvip.type -attr "RESTART_ATTEMPTS=2, START_TIMEOUT=100,STOP_TIMEOUT=100,CHECK_INTERVAL=10, USR_ORA_VIP=172.16.0.0, START_DEPENDENCIES=hard(ora.net1.network)pullup(ora.net1.network), STOP_DEPENDENCIES=hard(ora.net1.network)"
To register a resources based on the test_type1
resource type:
$ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r1.txt" $ crsctl add resource r1 -type test_type1 -attr "PATH_NAME=/tmp/r2.txt"
Use the crsctl add type
command to create a resource type in Oracle Clusterware.
crsctl add type type_name -basetype base_type_name {-attr "ATTRIBUTE=attribute_name | -file file_path,TYPE={string | int} [,DEFAULT_VALUE=default_value][,FLAGS=[READONLY][|REQUIRED]]"}
Table E-3 crsctl add type Command Parameters
Parameter | Description |
---|---|
type_name
|
A name for the resource type in the form of |
-basetype base_type_name
|
The name of an existing base type. Any resource type that you create must either have |
-attr |
You can specify the resource type attributes using the
You cannot use multiple "ATTRIBUTE=FOO,TYPE=integer,DEFAULT_ VALUE=0,FLAGS=REQUIRED,ATTRIBUTE=BAR,TYPE=string" The preceding example defines two type attributes, |
-file file_path
|
Path name (either absolute or relative) for a text file containing line-separated resource type keyword-value pairs that define the resource type. An example of the contents of the file is: ATTRIBUTE=FOO TYPE=integer DEFAULT_VALUE=0 FLAGS=REQUIRED ATTRIBUTE=BAR TYPE=string Note: The keywords must be in the following order: The preceding example defines two type attributes, |
See Also:
"Resource Types" for more information about resource typesBoth the type_name
and base_type_name
parameters are required
You can either specify a file containing the type information or you can specify the type information on the command line
Do not use this command for any resource types with names that begin with ora because these resource types are Oracle resource types
You must have read permissions on the base type
Use the crsctl check css
command to check the status of Cluster Synchronization Services. This command is most often used when Oracle Automatic Storage Management (Oracle ASM) is installed on the local server.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl check evm
command to check the status of the Event Manager.
Use the crsctl delete resource
command to remove resources from the Oracle Clusterware configuration.
Table E-4 crsctl delete resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
Specify the name of the resource you want to remove. |
-i |
If you specify |
-f |
Use the force option to remove either running resources, or remove this resource even though other resources have a hard dependency on it. |
The resource_name
parameter is required
You must have read and write permissions to delete the specified resources
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources
Use the crsctl delete type
command to remove a resource type from the Oracle Clusterware configuration.
The type_name
parameter is required
If you specify -i
, then the command fails if Oracle Clusterware cannot process the request immediately
Do not use this command for any resource types with names that begin with ora because these resource types are Oracle resource types
Use the crsctl get hostname
command to retrieve the host name of the local server.
Use the crsctl getperm resource
command to display the user and group permissions for the specified resource.
crsctl getperm resource resource_name [ {-u user_name | -g group_name} ]
See Also:
Appendix B, "Oracle Clusterware Resource Reference" for more information about resources and resource attributesTable E-5 crsctl getperm resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
Specify the name of the resource for which you want to obtain permissions. |
-u user_name
|
If you specify |
-g group_name
|
If you specify |
The resource_name
parameter is required
You must have read permission on the specified resources to obtain their permissions
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources
The crsctl getperm resource
command returns output similar to the following, depending on the command option you choose:
$ crsctl getperm resource app.appvip Name: app.appvip owner:root:rwx,pgrp:oinstall:rwx,other::r--
$ crsctl getperm resource app.appvip -u oracle Name: app.appvip rwx
$ crsctl getperm resource app.appvip -g dba Name: app.appvip r--
Use the crsctl getperm type
command to obtain permissions for a particular resource type.
crsctl getperm type resource_type [-u user_name] | [-g group_name]
See Also:
"Resource Types" for more information about resource typesTable E-6 crsctl getperm type Command Parameters
Parameter | Description |
---|---|
resource_type
|
Specify the resource type for which you want to obtain permissions. |
-u user_name
|
If you specify |
-g group_name
|
If you specify |
The resource_type
parameter is required
Do not use this command for any resource types with names that begin with ora because these resource types are Oracle resource types
Use the crsctl modify resource
command to modify the attributes of a particular resource in Oracle Clusterware.
crsctl modify resource resource_name -attr "attribute_name=attribute_value" [-i] [-f] [-delete]
Table E-7 crsctl modify resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
The name of the resource you want to modify. |
-attr "attribute_name= attribute_value" |
You can specify attributes for a resource you want to modify in two different ways:
|
-i |
If you specify |
-f |
Use the
|
-delete |
If you specify the |
See Also:
Appendix B, "Oracle Clusterware Resource Reference" for more information about resources and resource attributesThe resource_name
parameter is required
If an attribute value for an attribute name-value pair contains commas, then the value must be enclosed in single quotation marks (''
). For example:
"START_DEPENDENCIES='hard(res1,res2,res3)'"
You must have read and write permissions on the specified resources to modify them
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources
Use the crsctl modify type
command to modify an existing resource type.
crsctl modify type type_name -attr "ATTRIBUTE=attribute_name,TYPE={string | int} [,DEFAULT_VALUE=default_value [,FLAGS=[READONLY][| REQUIRED]]" [-i] [-f]]
Table E-8 crsctl modify type Command Parameters
Parameter | Description |
---|---|
type_name
|
Specify the name of the resource type you want to modify. You cannot modify resource type names. |
-attr |
You can modify the following resource type keywords:
Note: Although you must specify the See Also: Table E-3, "crsctl add type Command Parameters" for descriptions of these keywords |
-i |
If you specify the |
See Also:
"Resource Types" for more information about resource typesThe type_name
parameter is required
Do not use this command for any resource types with names that begin with ora because these resource types are Oracle resource types
Use the crsctl setperm resource
command to set permissions for a particular resource.
crsctl setperm resource resource_name {-u acl_string | -x acl_string | -o user_name | -g group_name}
Table E-9 crsctl setperm resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
Specify the name of the resource for which you want to set permissions. |
{-u | -x | -o | -g} |
You can set only one of the following permissions for a resource:
Specify a user, group, or other ACL string, as follows: user:user_name[:readPermwritePermexecPerm] | group:group_name[:readPermwritePermexecPerm] | other[::readPermwritePermexecPerm]
|
See Also:
Appendix B, "Oracle Clusterware Resource Reference" for more information about resources and resource attributesDo not use this command for any resources with names that begin with ora because these resources are Oracle resources.
You must have read and write permissions on the specified resources to set their permissions
Use the crsctl setperm type
command to set permissions resources of a particular resource type.
crsctl setperm type resource_type_name {-u acl_string | -x acl_string | -o user_name | -g group_name}
Table E-10 crsctl setperm type Command Parameters
Parameter | Description |
---|---|
resource_type_name
|
Specify the name of the resource type for which you want to set permissions. |
{-u | -x | -o | -g} |
You can specify only one of the following parameters for a resource type:
Specify a user, group, or other ACL string, as follows: user:user_name[:readPermwritePermexecPerm] | group:group_name[:readPermwritePermexecPerm] | other[::readPermwritePermexecPerm]
|
The resource_type_name
parameter is required
You must have read and write permissions on the specified resources to set their permissions
Do not use this command for any resource types with names that begin with ora because these resource types are Oracle resource types
Use the crsctl start resource
command to start many idle resources on a particular server in the cluster.
crsctl start resource {resource_name [...] | -w filter | -all} [-n server_name] [-k cid] [-d did] [-env "env1=val1,env2=val2,..."] [-i] [-f]
Table E-11 crsctl start resource Command Parameters
Parameter | Description |
---|---|
resource_name [...]
|
One or more space-delimited resource names to start. |
-w filter
|
Specify a resource filter that Oracle Clusterware uses to match resources. |
-all |
Use this option to start all resources in the cluster. |
-n server_name
|
Specify the name of the server on which the resources you want to start reside. If you do not specify a server, then Oracle Clusterware starts the resources on the best server according to the attribute profile of each resource. |
-k cid
|
Specify the resource cardinality ID. If you specify this parameter, then Oracle Clusterware starts the resource instances that have the cardinality you specify. |
-d did
|
Specify the resource degree ID. If you specify this parameter and the degree ID is greater than 1, then Oracle Clusterware starts all resource instances that meet this criteria. Note: You cannot use the |
-env "env1=val1, env2=val2,..." |
You can optionally override one or more resource profile attribute values with the |
-i |
If you specify |
-f |
Use the |
Any one of the three following options is required to specify which resources you want to start:
You can specify one or more resources to start
You can specify a resource filter that Oracle Clusterware uses to match resources to start
You can specify the -all
option to start all resources on the specified server
You must have read and execute permissions on the specified resources to start them
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources.
Use the crsctl status resource
command to obtain the status and configuration information of many particular resources.
crsctl status resource {resource_name [...] | -w "filter"} [-p | -v [-e]] | [-f | -l | -g] [[-k cid | -n server_name] [-d did]] | [-s -k cid [-d did]] [-t]
Table E-12 crsctl status resource Command Parameters
Parameter | Description |
---|---|
resource_name [...] | -w "filter" |
One or more space-delimited resource names of which you want to check the status. Or you can specify a resource filter that Oracle Clusterware uses to limit the number of resources displayed. The filter must be enclosed in double quotation marks (
See Also: "Filters" for more information about filters |
[-p | -v [-e]] | [-f | -l | -g] |
You can specify one of two options:
|
[-k cid | -n server_name] [-d did | [-s -k cid [-d did]]] |
You can specify one of two options:
|
-t |
Specify the |
Either a space-delimited list of resources or a resource filter is required.
You must have read permissions on the specified resources to obtain their status.
Use crsctl status resource
to query the status information of any resource deployed in the cluster. Oracle recommends, however, that you use the respective SRCVTL command to query the status information of Oracle (ora.*
) resources.
Use the crsctl status type
command to obtain the configuration information of one or more particular resource types.
Table E-13 crsctl status type Command Parameters
Parameter | Description |
---|---|
[resource_type_name [...]
|
Specify one or more space-delimited resource type names of which you want to check the status. |
-g] [-p] [-f |
You can specify the following parameters as options when Oracle Clusterware checks the status of specific server pools:
|
Use the crsctl stop resource
command to stop running resources.
crsctl stop resource {resource_name [...] | -w "filter" | -all} [-n server_name] [-k cid] [-d did] [-env "env1=val1,env2=val2,..."] [-i] [-f]
Table E-14 crsctl stop resource Command Parameters
Parameter | Description |
---|---|
resource_name [...]
|
One or more space-delimited resource names to stop. |
-w "filter"
|
Specify a resource filter that Oracle Clusterware uses to limit the number of resources stopped. The filter must be enclosed in double quotation marks (
|
-all |
Use this option to stop all resources in the cluster. |
-n server_name
|
Specify the name of the server on which the resource instances you want to stop reside. If you do not specify a server, then Oracle Clusterware stops all instances of the resource. |
-k cid
|
Specify the resource cardinality ID. If you specify this parameter, then Oracle Clusterware stops the resource instances that have the cardinality you specify. |
-d did
|
Specify the resource degree ID. If you specify this parameter and the degree ID is greater than 1, then Oracle Clusterware stops all resource instances that meet this criteria. |
-env "env1=val1, env2=val2,..." |
You can optionally override one or more resource profile attribute values with the |
-i |
If you specify |
-f |
Specify the |
Any one of the three following options is required to specify which resources you want to stop:
You can specify one or more resources to stop
You can specify a resource filter that Oracle Clusterware uses to match resources to stop
You can specify the -all
option with the -n
server_name
option to stop all resources on a particular server
You must have read and execute permissions on the specified resources to stop them
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources.
The commands listed in this section manage the Oracle Clusterware stack in an Oracle RAC environment, which consists of the following:
Oracle Clusterware, the member nodes and server pools
Oracle ASM (if installed)
Cluster Synchronization Services
Cluster Time Synchronization Services
You can use the following commands only in an Oracle RAC environment:
Use the crsctl add crs administrator
command to add a user to the list of cluster administrators.
You must run this command as root
or a cluster administrator, or an administrator on Windows systems
By default, root
, the user that installed Oracle Clusterware, and the *
wildcard are members of the list of users who have Oracle Clusterware administrative privileges. Run the crsctl delete crs administrator
command to remove the wildcard and enable role-separated management of Oracle Clusterware.
See Also:
"Role-Separated Management" for more informationUse the crsctl add css votedisk
command to add one or more voting disks to the cluster on storage devices other than an Oracle ASM disk group.
Table E-16 crsctl add css votedisk Command Parameters
Parameter | Description |
---|---|
path_to_voting_disk
|
A fully qualified path to the voting disk you want to add. To add multiple voting disks, separate each path with a space. |
-purge |
Removes all existing voting disks at once. You can replace the existing set of voting files in one operation. |
You should have at least three voting disks, unless you have a storage device, such as a disk array, that provides external redundancy. Oracle recommends that you do not use more than 5 voting disks. The maximum number of voting disks that is supported is 15.
See Also:
"Adding, Deleting, or Migrating Voting Disks" for more informationCaution:
By default, any named user may create a server pool. To restrict the operating system users that have this privilege, Oracle strongly recommends that you add specific users to the CRS Administrators list.See Also:
"Role-Separated Management" for more information about adding users to the CRS Administrators listUse the crsctl add serverpool
command to add a server pool that is for hosting non-database resources (such as application servers) to Oracle Clusterware.
crsctl add serverpool server_pool_name {-file file_path | -attr "attr_name=attr_value[,attr_name=attr_value[,...]]"} [-i] [-f]
Table E-17 crsctl add serverpool Command Parameters
Parameter | Description |
---|---|
server_pool_name
|
A short, descriptive name for the server pool. |
-file file_path
|
Fully-qualified path to an attribute file to define the server pool. |
attribute_name
|
The name of a server pool attribute Oracle Clusterware uses to manage the server pool preceded by the
|
attribute_value
|
A value for the server pool attribute. Note: The -attr "MAX_SIZE=30, IMPORTANCE=3" |
-i |
If you specify |
-f |
If you specify the |
The server_pool_name
parameter is required.
If an attribute value for an attribute name-value pair contains commas, then the value must be enclosed in single quotation marks (''
).
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools.
Running this command may result in Oracle Clusterware relocating other servers between server pools to comply with the new configuration.
You must run this command as root
or a cluster administrator.
Use the crsctl add serverpool
command to create server pools that host non-database resources. To create server pools that host Oracle databases, use the SRVCTL command utility.
See Also:
Oracle Real Application Clusters Administration and Deployment Guide for information about using the SRVCTL command utility to create server poolsTo add a server pool named testsp
with a maximum size of 5 servers, run the following command as root
or the Oracle Clusterware installation owner:
# crsctl add serverpool testsp -attr "MAX_SIZE=5"
Create the sp1_attr
file with the attribute values for the sp1
serverpool, each on its own line, as shown in the following example:
IMPORTANCE=1 MIN_SIZE=1 MAX_SIZE=2 SERVER_NAMES=node3 node4 node5 PARENT_POOLS=Generic EXCLUSIVE_POOLS=testsp ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
Use the following command to create the sp1
server pool using the sp1_attr
file as input:
$ crsctl add serverpool sp1 -file /tmp/sp1_attr
Use the crsctl check cluster
command on any node in the cluster to check the status of the Oracle Clusterware stack.
You can check the status of the Oracle Clusterware stack on all nodes in the cluster with the -all
option or you can specify one or more space-delimited nodes. If you do not specify either option, Oracle Clusterware checks the status of the Oracle Clusterware stack on the local server.
You can use this cluster-aware command on any node in the cluster.
The crsctl check cluster
command returns output similar to the following:
$ crsctl check cluster -all ***************************************************************** node1: CRS-4537: Cluster Ready Services is online CRS-4529: Cluster Synchronization Services is online CRS-4533: Event Manager is online ***************************************************************** node2: CRS-4537: Cluster Ready Services is online CRS-4529: Cluster Synchronization Services is online CRS-4533: Event Manager is online *****************************************************************
Use the crsctl check crs
command to check the status of Oracle High Availability Services and the Oracle Clusterware stack on the local server.
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.
crsctl check resource {resource_name [...] | -w "filter" } [-n node_name] [-k cardinality_id] [-d degree_id] }
Table E-18 crsctl check resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
Specify a particular resource. You can check multiple resources by entering multiple resource names, with each name separated by a space. |
-w "filter"
|
Specify a resource filter that Oracle Clusterware uses to limit the number of resources checked. The filter must be enclosed in double quotation marks (
|
-n node_name
|
Check the resource instance on a specific node. If you do not specify the |
-k cardinality_id
|
Specify the resource cardinality ID. |
-d degree_id
|
Specify the resource degree ID. |
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
Use the crsctl check ctss
command to check the status of the Cluster Time Synchronization services.
Use the crsctl config crs
command to display Oracle High Availability Services automatic startup configuration.
Use the crsctl delete crs administrator
command to remove a user from the Oracle Clusterware administrator list.
Table E-19 crsctl delete crs administrator Command Parameters
Parameter | Description |
---|---|
-u user_name
|
The name of the user whose Oracle Clusterware administrative privileges you want to remove. By default, the list of users with Oracle Clusterware administrative privileges consists of the user who installed Oracle Clusterware, See Also: "Role-Separated Management" for more information |
-f |
Use this option to override the user name validity check. |
The user_name
parameter is required
You must run this command as root
or a cluster administrator, or an administrator on Windows systems
To enable role-separated management, you must remove the *
value enclosed in double quotation marks (""
)
Use the crsctl delete css votedisk
to remove a voting disk from the Oracle Clusterware configuration.
You can use this command only to remove voting disks from non-Oracle ASM storage devices
You can obtain the file universal identifiers of each current voting disk by running the crsctl query css votedisk
command
Use the crsctl delete serverpool
command to remove a server pool from the Oracle Clusterware configuration.
crsctl delete serverpool server_pool_name [server_pool_name [...]] [-i]
See Also:
"Understanding Server Pools" for more information about server pools and server pool attributesThe server_pool_name
parameter is required
If you specify -i
, then the command fails if Oracle Clusterware cannot process the request immediately
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools
While you can use this command in either environment, it is only useful in the Oracle RAC environment
Use the crsctl disable crs
command to prevent the automatic startup of Oracle High Availability Services when the server boots.
This command only affects the local server
If you disable Oracle High Availability Services automatic startup, you must use the crsctl start crs
command to start Oracle High Availability Services
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl discover dhcp
command to send DHCP discover packets on the network at the specified port. If DHCP servers are present on the network, then they respond to the discovery message and the command succeeds.
Table E-21 crsctl discover dhcp Command Parameters
Parameter | Description |
---|---|
-clientid clientid
|
Specify the client ID for which you want to attempt discovery. Obtain the client ID by running the |
-port port
|
The port to which CRSCTL sends the discovery packets. |
Use the crsctl enable crs
command to enable automatic startup of Oracle High Availability Services when the server boots.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl get clientid dhcp
command to display the client ID that the Oracle Clusterware agent uses to obtain the IP addresses from the DHCP server for configured cluster resources. The VIP type is required.
crsctl get clientid dhcp -cluname cluster_name -viptype vip_type [-vip vip_res_name] [-n node_name]
Table E-22 crsctl get clientid dhcp Command Parameters
Parameter | Description |
---|---|
-cluname cluster_name
|
Specify the name of the cluster where the cluster resources are configured. |
-viptype vip_type
|
Specify the type of the VIP resource for which you want to display client IDs: |
-vip vip_resource_name
|
Specify the name of the VIP resource. This parameter is required if you specify the |
-n node_name
|
Specify the name of the node for which you want to obtain the client ID. This parameter is required if you specify the |
Use the crsctl get css
command to obtain the value of a specific Cluster Synchronization Services parameter.
Cluster Synchronization Services parameters and their default values include:
clusterguid diagwait disktimeout (200 (seconds)) misscount (30 (seconds)) reboottime (3 (seconds)) priority (4 (UNIX), 3 (Windows)) logfilesize (50 (MB))
This command does not display default values
This command only affects the local server
Use the crsctl get css ipmiaddr
command to get the address stored in the Oracle Local Registry of the local Intelligent Platform Management Interface (IPMI) device.
Run the command under the user account used to install Oracle Clusterware.
This command only obtains the IP address stored in the Oracle Local Registry. It may not be the IP address actually used by IPMI.
Use either ipmiutil
or ipmitool
as root
on the local server to obtain the IP address used by the IPMI device.
Use the crsctl getperm serverpool
command to obtain permissions for a particular server pool.
crsctl getperm serverpool server_pool_name [-u user_name | -g group_name]
See Also:
"Understanding Server Pools" for more information about server pools and server pool attributesTable E-23 crsctl getperm serverpool Command Parameters
Parameter | Description |
---|---|
server_pool_name
|
Specify the name of the server pool for which you want to obtain permissions. |
-u user_name
|
If you specify |
-g group_name
|
If you specify |
The server_pool_name
parameter is required
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools
While you can use this command in either environment, it is only useful in the Oracle RAC environment
Use the crsctl lsmodules
command to list the components of the modules that you can debug.
See Also:
"Dynamic Debugging" for more information about debuggingYou can specify any of the following components:
mdns
: Multicast domain name servergpnp
: Grid Plug and Play servicecss
: Cluster Synchronization Servicescrf
: Cluster Health Monitorcrs
: Cluster Ready Servicesctss
: Cluster Time Synchronization Serviceevm
: Event Managergipc
: Grid Interprocess CommunicationThe crsctl lsmodules
command returns output similar to the following:
$ crsctl lsmodules evm List EVMD Debug Module: CLSVER List EVMD Debug Module: CLUCLS List EVMD Debug Module: COMMCRS List EVMD Debug Module: COMMNS List EVMD Debug Module: CRSOCR List EVMD Debug Module: CSSCLNT List EVMD Debug Module: EVMAGENT List EVMD Debug Module: EVMAPP ...
Use the crsctl modify serverpool
command to modify an existing server pool.
crsctl modify serverpool server_pool_name -attr "attr_name=attr_value [,attr_name=attr_value[, ...]]" [-i] [-f]
Table E-24 crsctl modify serverpool Command Parameters
Parameter | Description |
---|---|
server_pool_name
|
The name of the server pool you want to modify. |
attr_name
|
The name of a server pool attribute you want to modify preceded by the See Also: Table 2-2, "Server Pool Attributes" for details about server pool attributes |
attr_value
|
A value for the server pool attribute. Note: The -attr "CHECK_INTERVAL=30,START_TIMEOUT=25" See Also: Table 2-2, "Server Pool Attributes" for details about server pool attributes |
-i |
If you specify |
-f |
If you specify the If you do not specify the |
See Also:
"Understanding Server Pools" for more information about server pools and server pool attributesYou must run this command as root
The server_pool_name
parameter is required
If an attribute value for an attribute name-value pair contains commas, then the value must be enclosed in single quotation marks (''
). For example:
"START_DEPENDENCIES='hard(res1,res2,res3)'"
Running this command may result in Oracle Clusterware relocating other servers between server pools to comply with the new configuration
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools
While you can use this command in either environment, it is only useful in the Oracle RAC environment
Use the crsctl pin css
command to pin many specific nodes. Pinning a node means that the association of a node name with a node number is fixed. If a node is not pinned, its node number may change if the lease expires while it is down. The lease of a pinned node never expires.
You can specify a space-delimited list of servers
Any pre-11g release 2 (11.2) Oracle software must reside on a pinned server.
A node may be unpinned with crsctl unpin css
.
Deleting a node with the crsctl delete node
command implicitly unpins the node.
Use the crsctl query crs administrator
command to display the list of users with Oracle Clusterware administrative privileges.
Use the crsctl query crs activeversion
command to display the active version of the Oracle Clusterware software running in the cluster. During a rolling upgrade, however, the active version is not advanced until the upgrade is finished across the cluster, until which time the cluster operates at the pre-upgrade version.
Use the crsctl query crs releaseversion
command to display the version of the Oracle Clusterware software stored in the binaries on the local node.
Use the crsctl query crs softwareversion
command to display latest version of the software that has been successfully started on the specified node.
If you do not provide a node name, then Oracle Clusterware displays the version of Oracle Clusterware running on the local server.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl query css ipmiconfig
command to determine whether Oracle Clusterware on the local server has been configured to use IPMI for failure isolation. Note that this command detects the presence of configuration data, but cannot not validate its correctness.
This command attempts to locate and access the IPMI configuration stored in the Oracle Cluster Registry (OCR) and should be executed under the account used to install Oracle Clusterware, or an authorization failure may be reported.
An authorization failure may not result when executed under another account, if the registry contains no IPMI configuration data.
Use the crsctl query css ipmiconfig
command to determine the presence of the Intelligent Platform Management Interface (IPMI) driver on the local system.
This command performs a pre-check during IPMI installation, and is normally issued only by the installer.
This command performs a perfunctory check and a success return does not guarantee that the IPMI hardware is fully configured for use.
There are no special privileges required to run this command.
Use the crsctl query css votedisk
command to display the voting disks used by Cluster Synchronization Services, the status of the voting disks, and the location of the disks, whether they are stored on Oracle ASM or elsewhere.
The crsctl query css votedisk
command returns output similar to the following:
$ crsctl query css votedisk ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 296641fd201f4f3fbf3452156d3b5881 (/ocfs2/host09_vd3) [] 2. ONLINE 8c4a552bdd9a4fd9bf93e444223146f2 (/netapp/ocrvf/newvd) [] 3. ONLINE 8afeee6ae3ed4fe6bfbb556996ca4da5 (/ocfs2/host09_vd1) [] Located 3 voting disk(s).
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl query dns
command to obtain a list of addresses returned by DNS lookup of the name with the specified DNS server.
crsctl query dns {-servers | -name name [-dnsserver DNS_server_address] [-port port] [-attempts number_of_attempts] [-timeout timeout_in_seconds] [-v]}
Table E-25 crsctl query dns Command Parameters
Parameter | Description |
---|---|
-servers |
Use the |
-name name
|
Specify the fully-qualified domain name you want to look up. |
-dnsserver DNS_server_address
|
Specify the address of the DNS server on which you want the domain name to be looked up. |
-port port
|
The port on which the DNS server listens. If you do not specify a port, then it defaults to port 53. |
-attempts number_of_attempts
|
Specify the number of retry attempts. |
-timeout timeout_in_seconds
|
Specify the timeout length in seconds. |
-v |
Verbose output. |
The crsctl query dns
command returns output similar to the following for a DNS server named stmjk07-vip.stmjk0462.foo.com
:
CRS-10024: DNS server returned 192.168.29.250 for name stmjk07-vip.stmjk0462.foo.com
If you choose the -servers
option, then the command returns output similar to the following:
CRS-10018: the following configuration was found on the system: CRS-10019: There are 3 domains in search order. They are: us.foo.com foo.com foocorp.com CRS-10022: There are 3 name servers. They are: 192.168.249.41 192.168.249.52 192.168.202.15 CRS-10020: number of retry attempts for name lookup is: 2 CRS-10021: timeout for each name lookup is: 1
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl release dhcp
command to send a DHCP lease release request to a specific client ID and send release packets on the network to a specific port.
Table E-26 crsctl release dhcp Command Parameters
Parameter | Description |
---|---|
-clientid clientid
|
Specify the client ID for which you want to attempt release. Obtain the client ID by running the |
-port port
|
The port to which CRSCTL sends the release packets. If you do not specify a port, then CRSCTL uses the default value 67. |
Use the crsctl relocate resource
command to relocate resources to another server in the cluster.
crsctl relocate resource {resource_name | resource_name | -all -s source_server | -w "filter"} [-n destination_server] [-k cid] [-env "env1=val1,env2=val2,..."] [-i] [-f]
Table E-27 crsctl relocate resource Command Parameters
Parameter | Description |
---|---|
resource_name
|
The name of a resource you want to relocate. |
resource_name | -all -s source_server |
Specify one particular or all resources located on a particular server from which you want to relocate those resources. |
-w "filter"
|
Specify a resource filter that Oracle Clusterware uses to limit the number of resources relocated. The filter must be enclosed in double quotation marks (
|
-n destination_server
|
Specify the name of the server to which you want relocate resources. If you do not specify a destination server, then Oracle Clusterware relocates the resources to the best server according to the attribute profile of each resource. |
-k cid
|
Specify the resource cardinality ID. If you specify this parameter, then Oracle Clusterware relocates the resource instance that have the cardinality you specify. |
-env "env1=val1, env2=val2,..." |
You can optionally override one or more resource profile attribute values for this command. If you specify multiple environment name-value pairs, then you must separate each pair with a comma and enclose the entire list in double quotation marks ( |
-i |
If you specify |
-f |
Specify the Note: When you are relocating resources that have cardinality greater than 1, you must use either |
Any one of the three following options is required to specify which resources you want to relocate:
You can specify one particular resource to relocate.
Or you can specify one particular or all the resources to relocate from a particular source server.
Thirdly, you can specify a resource filter that Oracle Clusterware uses to match resources to relocate.
If a resource has a degree ID greater than 1, then Oracle Clusterware relocates all instances of the resource.
You must have read and execute permissions on the specified resources to relocate them
Do not use this command for any resources with names that begin with ora because these resources are Oracle resources.
Use the crsctl relocate server
command to relocate a server to a different server pool.
Table E-28 crsctl relocate server Command Parameters
Parameter | Description |
---|---|
server_name
|
The name of the server you want to relocate. You can provide a space-delimited list of servers if you want to relocate multiple servers. |
-c server_pool_name
|
Specify the name of the server pool to which you want relocate the servers. |
-i |
If you specify |
-f |
If you specify the If you do not specify the |
Use the crsctl replace discoverystring
command to replace the existing discovery string used to locate voting disk files.
You must be root
, the Oracle Clusterware installation owner, or a member of the Administrators group to run this command.
You can run this command on any node in the cluster.
Use the crsctl replace votedisk
command to move or replace the existing voting disks. This command creates voting disks in the specified locations, either in Oracle ASM or some other storage option. Oracle Clusterware copies existing voting disk information into the new locations and removes the voting disks from the former locations.
Table E-30 crsctl replace votedisk Command Parameters
Parameter | Description |
---|---|
+ |
Specify the disk group in Oracle ASM where you want to locate the voting disk. |
|
A space-delimited list of voting disk file paths for voting disk files that reside outside of Oracle ASM. |
You must be root
, the Oracle Clusterware installation owner, or a member of the Administrators group to run this command.
Specify to replace a voting disk in either an Oracle ASM disk group or in some other storage device.
You can run this command on any node in the cluster.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl request dhcp
command to send DHCP request packets on the network at the specified port. If the DHCP server has an IP address it can provide, then it responds with the IP address for the client ID.
Table E-31 crsctl request dhcp Command Parameters
Parameter | Description |
---|---|
-clientid clientid
|
Specify the client ID for which you want to attempt request. Obtain the client ID by running the |
-port port
|
The port to which CRSCTL sends the request packets. If you do not specify a port, then CRSCTL uses the default value 67. |
Use the crsctl set css
command to set the value of a Cluster Synchronization Services parameter.
Use the crsctl set css ipmiaddr
command to store the address of the local Intelligent Platform Management Interface (IPMI) device in the Oracle Local Registry.
Run the command under the user account used to install Oracle Clusterware
Obtain the IP address used by the IPMI device using either ipmiutil
or ipmitool
as root
on the local server
Oracle Clusterware stores the IP address for IPMI in the configuration store, and distributes the address as required
This command only stores the IPMI IP address on the server from which you run it
This command fails if another server cannot access IPMI at the supplied address
Use the crsctl set css ipmiadmin
command to store the login credentials of an Intelligent Platform Management Interface (IPMI) administrator in the Oracle Local Registry.
This command must be run under the user account that installed Oracle Clusterware.
When prompted, provide the new password to associate with the new administrator account name. Oracle Clusterware stores the name and password for the local IPMI in the configuration store, and distributes the new credentials as required.
This command only modifies the IPMI administrator on the server from which you run it.
This command fails if another server cannot access the local IPMI at the supplied address.
Use the crsctl setperm serverpool
command to set permissions for a particular server pool.
crsctl setperm serverpool server_pool_name {-u acl_string | -x acl_string | -o user_name | -g group_name}
Table E-32 crsctl setperm serverpool Command Parameters
Parameter | Description |
---|---|
server_pool_name
|
Specify the name of the server pool for which you want to set permissions. |
{-u | -x | -o | -g} |
You can specify only one of the following parameters for a server pool:
Specify a user, group, or other ACL string, as follows: user:user_name[:readPermwritePermexecPerm] | group:group_name[:readPermwritePermexecPerm] | other[::readPermwritePermexecPerm]
|
The server_pool_name
parameter is required
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools
While you can use this command in either environment, it is only useful in the Oracle RAC environment
Use the crsctl start cluster
command on any node in the cluster to start the Oracle Clusterware stack.
You can choose to start the Oracle Clusterware stack on all servers in the cluster, on one or more named servers in the cluster (separate multiple server names by a space), or the local server, if you do not specify either -all
or -n
.
You can use this cluster-aware command on any node in the cluster.
Use the crsctl start crs
command to start Oracle High Availability Services on the local server.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl start ip
command to start a given IP name or IP address on a specified interface with a specified subnet mask. Run this command on the server on which you want to bring up the IP.
Table E-33 crsctl start ip Command Parameters
Parameter | Description |
---|---|
{IP_name | IP_address} |
Specify either a domain name or an IP address. If you do not specify a fully-qualified domain name, then CRSCTL uses a standard name search. |
netmask
|
Specify a subnet mask for the IP to start. |
interface_name
|
Specify an interface on which to start the IP. |
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl start testdns
command to start a test DNS server that will listen on a specified IP address and port. The test DNS server does not respond to incoming packets but does display the packets it receives. Typically, use this command to check if domain forwarding is set up correctly for the GNS domain.
Table E-34 crsctl start testdns Command Parameters
Parameter | Description |
---|---|
-address address
|
Specify a server address in the form |
-port port
|
The port on which the server listens. If you do not specify a port, then it defaults to port 53. |
-once |
Specify this flag to indicate that the DNS server should exit after it receives one DNS query packet. |
-v |
Verbose output. |
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl status ip
command to check if a given IP address is up on the network.
Use the crsctl status server
command to obtain the status and configuration information of one or more particular servers.
crsctl status server [-p | -v | -f] crsctl status server { server_name [...] | -w "filter"} [-g | -p | -v | -f]
Table E-36 crsctl status server Command Parameters
Parameter | Description |
---|---|
server_name [...]
|
Specify one or more space-delimited server names. |
-w "filter"
|
Specify a filter to determine which servers are displayed. The filter must be enclosed in double quotation marks ( See Also: "Filters" for more information about filters |
-g | -p | -v | -f |
You can specify one of the following parameters when Oracle Clusterware checks the status of specific servers:
|
The crsctl status server
command returns output similar to the following:
NAME=node1 STATE=ONLINE NAME=node2 STATE=ONLINE
To display the full configuration of a specific server, enter a command similar to the following:
$ crsctl status server node2 -f NAME=node2 STATE=ONLINE ACTIVE_POOLS=Generic ora.orcl STATE_DETAILS=
Use the crsctl status serverpool
command to obtain the status and configuration information of one or more particular server pools.
crsctl status serverpool [-p | -v | -f]
crsctl status serverpool [server_pool_name [...]] [-w] [-g | -p | -v | -f]
Table E-37 crsctl status serverpool Command Parameters
Parameter | Description |
---|---|
[server_pool_name [...]
|
Specify one or more space-delimited server pool names. |
[-g | -p | -v | -f] |
You can optionally specify one of the following parameters:
|
The server_pool_name
parameter or a filter is required
Do not use this command for any server pools with names that begin with ora because these server pools are Oracle server pools
While you can use this command in either environment, it is only useful in the Oracle RAC environment
To display the full configuration of the server pool sp1
:
$ crsctl status serverpool sp1 -f NAME=spl IMPORTANCE=1 MIN_SIZE=0 MAX_SIZE=-1 SERVER_NAMES=node3 node4 node5 PARENT_POOLS=Generic EXCLUSIVE_POOLS= ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r-- ACTIVE_SERVERS=node3 node4
To display all the server pools and the servers associated with them, use the following command:
$ crsctl status serverpool NAME=Free ACTIVE_SERVERS= NAME=Generic ACTIVE_SERVERS=node1 node2 NAME=ora.orcl ACTIVE_SERVERS=node1 node2 NAME=sp1 ACTIVE_SERVERS=node3 node4
To find a server pool that meets certain criteria, use the following command:
$ crsctl status serverpool -w "MAX_SIZE > 1" NAME=sp2 ACTIVE_SERVERS=node3 node4
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl status testdns
command to query the test DNS server running on a specified address and local host name.
Table E-38 crsctl status testdns Command Parameters
Parameter | Description |
---|---|
-server DNS_server_address
|
Specify the DNS server address for which you want to check the status. |
-port port
|
The port on which the DNS server listens. If you do not specify a port, then it defaults to port 53. |
-v |
Verbose output. |
Use the crsctl stop cluster
command on any node in the cluster to stop the Oracle Clusterware stack on all servers in the cluster or specific servers.
If you do not specify -all
or one or more space-delimited server names, then Oracle Clusterware stops the Oracle Clusterware stack on the local server.
You can use this cluster-aware command on any node in the cluster.
This command attempts to gracefully stop resources managed by Oracle Clusterware while attempting to stop the Oracle Clusterware stack.
If any resources that Oracle Clusterware manages are still running after you run the crsctl stop cluster
command, then the command fails. Use the -f
option to unconditionally stop all resources and stop the Oracle Clusterware stack.
If you intend to stop Oracle Clusterware on all or a list of nodes, then use the crsctl stop cluster
command, because it prevents certain resources from being relocated to other servers in the cluster before the Oracle Clusterware stack is stopped on a particular server. If you must stop the Oracle High Availability Services on one or more nodes, then wait until the crsctl stop cluster
command completes and then run the crsctl stop crs
command on any particular nodes, as necessary.
Use the crsctl stop crs
command to stop Oracle High Availability Services on the local server.
This command attempts to gracefully stop resources managed by Oracle Clusterware while attempting to stop Oracle High Availability Services on the local server.
If any resources that Oracle Clusterware manages are still running after you run the crsctl stop crs
command, then the command fails. Use the -f
option to unconditionally stop all resources and stop Oracle High Availability Services on the local server.
If you intend to stop Oracle Clusterware on all or a list of nodes, then use the crsctl stop cluster
command, because it prevents certain resources from being relocated to other servers in the cluster before the Oracle Clusterware stack is stopped on a particular server. If you must stop the Oracle High Availability Services on one or more nodes, then wait until the crsctl stop cluster
command completes and then run the crsctl stop crs
command on any particular nodes, as necessary.
In Oracle Clusterware 11g release 2 (11.2.0.3), when you run this command in Solaris Sparc and Solaris X64 environments, drivers remain loaded on shutdown and subsequent startup. This does not happen in Linux environments.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl stop ip
command to stop a given IP name or IP address on a specified interface with a specified subnet mask. Run this command on the server on which you want to stop the IP.
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl stop testdns
command to stop a test DNS server.
Table E-40 crsctl stop testdns Command Parameters
Parameter | Description |
---|---|
-address address
|
Specify the server address for which you started the test DNS server in the form |
-port port
|
The port on which the DNS server listens. If you do not specify a port, then it defaults to port 53. |
[-domain GNS_domain]
|
Domain for which the server should stop listening. |
-v |
Verbose output. |
Use the crsctl unpin css
command to unpin many servers. If a node is not pinned, its node number may change if the lease expires while it is down.
You can specify a space-delimited list of nodes.
Unpinned servers that stop for longer than a week are no longer reported by olsnodes
. These servers are dynamic when they leave the cluster, so you do not need to explicitly remove them from the cluster.
Deleting a node with the crsctl delete node
command implicitly unpins the node.
During upgrade of Oracle Clusterware, all servers are pinned, whereas after a fresh installation of Oracle Clusterware 11g release 2 (11.2), all servers you add to the cluster are unpinned.
You cannot unpin a server that has an instance of Oracle RAC that is older than 11g release 2 (11.2) if you installed Oracle Clusterware 11g release 2 (11.2) on that server.
Use the crsctl unset css
command to unset the value of a Cluster Synchronization Services parameter and restore it to its default value.
You can specify the following Cluster Synchronization Services parameters:
diagwait
disktimeout
misscount
reboottime
priority
logfilesize
Starting with Oracle Database 11g release 2 (11.2.0.2), use the crsctl unset css ipmiconfig
command to clear all previously stored IPMI configuration (login credentials and IP address) from the Oracle Local Registry. This is appropriate when deconfiguring IPMI in your cluster or if IPMI configuration was previously stored by the wrong user.
This command must be run under the user account originally used to configure IPMI or by a privileged user.
This command only clears the IPMI configuration on the server on which you run it.
If Oracle Clusterware was able to access and use the configuration data to be deleted by this command, then it will continue to do so until you restart Oracle Clusterware.
The commands listed in this section control Oracle High Availability Services. These commands manage the Oracle High Availability Services stack in the Oracle Restart environment, which consists of the Oracle High Availability Services daemon (ohasd
), Oracle ASM (if installed), and Cluster Synchronization Services (if Oracle ASM is installed). These commands only affect the local server on which you run them.
Note:
Oracle does not support usingcrs_*
commands in an Oracle Restart environment.Each server in the cluster is in one of two possible states:
The whole stack is up, which means that Oracle High Availability Services is active
The whole stack is down, which means that Oracle High Availability Services is inactive
You can use the following commands in the Oracle Restart environment, only:
Use the crsctl check has
command to display the automatic startup configuration of the Oracle High Availability Services stack on the server.
Use the crsctl disable has
command to disable automatic startup of the Oracle High Availability Services stack when the server boots up.
Use the crsctl enable has
command to enable automatic startup of the Oracle High Availability Services stack when the server boots up.
Use the crsctl query crs releaseversion
command to display the release version of the Oracle Clusterware software that is stored in the binaries on the local node.
Use the crsctl query has softwareversion
command to display the software version on the local node.
If you do not provide a server name, then Oracle Clusterware displays the version of Oracle Clusterware running on the local server.
Use the crsctl start has
command to start Oracle High Availability Services on the local server.
Use the crsctl stop has
command to stop Oracle High Availability Services on the local server.
This command attempts to gracefully stop resources managed by Oracle Clusterware while attempting to stop Oracle High Availability Services.
If any resources that Oracle Clusterware manages are still running after you run the crsctl stop has
command, then the command fails. Use the -f
option to unconditionally stop all resources and stop Oracle High Availability Services.
You can use crsctl set log
commands as the root
user to enable dynamic debugging for Cluster Ready Services (CRS), Cluster Synchronization Services (CSS), and the Event Manager (EVM), and the clusterware subcomponents. You can dynamically change debugging levels using crsctl debug
commands. Debugging information remains in the Oracle Cluster Registry (OCR) for use during the next startup. You can also enable debugging for resources.
This section covers the following topics:
This section includes the following CRSCTL commands that aid in debugging:
Use the crsctl set log
command to set log levels for Oracle Clusterware.
crsctl set log {[crs | css | evm "component_name=log_level, [...]"] | [all=log_level]}
You can also set log levels for the agents of specific resources, as follows:
crsctl set log res "resource_name=log_level, [...]"
You can set log levels for various components of the three modules, CRS, CSS, and EVM. If you choose the all
option, then you can set log levels for all components of one module with one command. Use the crsctl lsmodules
command to obtain a list of components for each module.
Enter a comma-delimited list of component name-log level pairs enclosed in double quotation marks (""
).
Note:
Separate component name-log level pairs with an equals sign (=
) in Oracle Clusterware 11g release 2 (11.2). Previous Oracle Clusterware versions used a colon (:
).The log_level
is a number from 1
to 5
that sets the log level for the component or resource, where 1 is the least amount of log output and 5 provides the most detailed log output. The default log level is 2.
To set log levels for resources, specify the name of a particular resource, or a comma-delimited list of resource name-log level pairs enclosed in double quotation marks (""
).
$ crsctl set log crs "CRSRTI=1,CRSCOMM=2"
To set log levels for all components of the EVM module:
$ crsctl set log evm all=2
To set a log level for a resource:
$ crsctl set log res "myResource1=3"
You can use crsctl set log
and crsctl set trace
commands as the root
user to enable dynamic debugging for the various Oracle Clusterware modules.
This section includes the following topics:
You can enable debugging for Oracle Clusterware modules and their components, and for resources, by setting environment variables or by running crsctl set log
commands, using the following syntax:
crsctl set {log | trace} module_name "component:debugging_level [,component:debugging_level][,...]"
Run the crsctl set
command as the root
user, and supply the following information:
module_name
: The name of one of the following modules:
mdns
: Multicast domain name servergpnp
: Grid Plug and Play servicecss
: Cluster Synchronization Servicescrf
: Cluster Health Monitorcrs
: Cluster Ready Servicesctss
: Cluster Time Synchronization Serviceevm
: Event Managergipc
: Grid Interprocess Communicationcomponent
: The name of a component for one of the modules. See Table E-41 for a list of all of the components.
debugging_level
: A number from 1
to 5
to indicate the level of detail you want the debug command to return, where 1 is the least amount of debugging output and 5 provides the most detailed debugging output. The default debugging level is 2.
You can dynamically change the debugging level in the crsctl
command or you can configure an initialization file for changing the debugging level, as described in "Creating an Initialization File to Contain the Debugging Level".
The following commands show examples of how to enable debugging for the various modules:
To enable debugging for Oracle Clusterware:
crsctl set log crs "CRSRTI:1,CRSCOMM:2"
To enable debugging for OCR:
crsctl set log crs "CRSRTI:1,CRSCOMM:2,OCRSRV:4"
To enable debugging for EVM:
crsctl set log evm "EVMCOMM:1"
To enable debugging for resources
crsctl set log res "resname:1"
To obtain a list of components that can be used for debugging, run the crsctl lsmodules
command, as follows:
crsctl lsmodules {mdns | gpnp | css | crf | crs | ctss | evm | gipc}
Note:
You do not have to be theroot
user to run the crsctl lsmodulues
command.Table E-41 shows the components for the CRS, CSS, and EVM modules, respectively. Note that some component names are common between the CRS, EVM, and CSS daemons and may be enabled on that specific daemon. For example, COMMNS
is the NS layer and, because each daemon uses the NS layer, you can enable this specific module component on any of the daemons to get specific debugging information.
Table E-41 Components for the CRS, CSS, and EVM Modules
CRS ComponentsFoot 1 | CSS ComponentsFoot 2 | EVM ComponentsFoot 3 |
---|---|---|
CRSUI CRSCOMM CRSRTI CRSMAIN CRSPLACE CRSAPP CRSRES CRSCOMM CRSOCR CRSTIMER CRSEVT CRSD CLUCLS CSSCLNT COMMCRS COMMNS |
CLSF CSSD GIPCCM GIPCGM GIPCNM GPNP OLR SKGFD |
EVMD EVMDMAIN EVMCOMM EVMEVT EVMAPP EVMAGENT CRSOCR CLUCLS CSSCLNT COMMCRS COMMNS |
Footnote 1 Obtain the list of CRS components using the crsctl lsmodules crs
command.
Footnote 2 Obtain the list of CSS components using the crsctl lsmodules css
command.
Footnote 3 Obtain the list of EVM components using the crsctl lsmodules evm
command.
To set debugging levels on specific cluster nodes, include the -nodelist
keyword and the names of the nodes, as follows:
crsctl set log crs "CRSRTI:1,CRSCOMM:2" -nodelist node1,node2
Table E-42 describes the Cluster Synchronization Services modules.
Table E-42 Cluster Synchronization Services (CSS) Modules and Functions
Module | Description |
---|---|
CSS |
CSS client component |
CSSD |
CSS daemon component |
Table E-43 describes the function of each communication (COMM) module.
Table E-43 Communication (COMM) Modules and Functions
Module | Description |
---|---|
COMMCRS |
Clusterware communication layer |
COMMNS |
NS communication layer |
Table E-44 describes the functions performed by each CRS module.
Table E-44 Oracle Clusterware (CRS) Modules and Functions
Module | Descriptions |
---|---|
CRSUI |
User interface module |
CRSCOMM |
Communication module |
CRSRTI |
Resource management module |
CRSMAIN |
Main module/driver |
CRSPLACE |
CRS placement module |
CRSAPP |
CRS application |
CRSRES |
CRS resources |
CRSOCR |
Oracle Cluster Registry interface |
CRSTIMER |
Various timers related to CRS |
CRSEVT |
CRS EVM/event interface module |
CRSD |
CRS daemon |
Using the crsctl set log crs
command, you can debug the OCR components listed in Table E-45. The components listed in Table E-45 can also be used for the Oracle Local Registry (OLR) except for OCRMAS and OCRASM. You can also use them for OCR and OLR clients, except for OCRMAS and OCRSRV. Some OCR and OLR clients are OCRCONFIG, OCRDUMP, and so on.
Table E-45 Oracle Cluster Registry (OCR) Component Names
Module | Description |
---|---|
OCRAPI |
OCR abstraction component |
OCRCLI |
OCR client component |
OCRSRV |
OCR server component |
OCRMAS |
OCR master thread component |
OCRMSG |
OCR message component |
OCRCAC |
OCR cache component |
OCRRAW |
OCR raw device component |
OCRUTL |
OCR util component |
OCROSD |
OCR operating system dependent (OSD) layer |
OCRASM |
OCR ASM component |
Table E-46 describes the OCR tool modules.
This section describes how to specify the debugging level in an initialization file. This debugging information is stored for use during the next startup.
For each process to debug, you can create an initialization file that contains the debugging level.
The initialization file name includes the name of the process that you are debugging (process_name
.ini
). The file is located in the Grid_home
/log/
host_name
/admin/
directory. For example, the name for the CLSCFG debugging initialization file on node1
would be:
Grid_home/log/node1/admin/clscfg.ini
You can also use an initialization file when using OCR utilities. The initialization file for ocrconfig
, ocrdump
, and ocrcheck
is:
Grid_home/srvm/admin/ocrlog.ini
The format of the initialization file is as follows:
mesg_logging_level=2 comploglvl="OCRAPI:0;OCRSRV:0" comptrclvl="OCRAPI:0;OCRSRV:0"
You can specify component names, logging, and tracing levels.
See Also:
"Enabling Debugging for Oracle Clusterware Modules" for information about dynamically changing debugging levels by specifying the level number (from 1 to 5) on thecrsctl
commandYou can enable debugging for Oracle Clusterware resources by running the crsctl set log
command, using the following syntax:
crsctl set log res "resource_name=debugging_level"
Run the crsctl set log
command as the root
user, and supply the following information:
debugging_level
: A number from 1
to 5
to indicate the level of detail you want the debug command to return, where 1 is the least amount of debugging output and 5 provides the most detailed debugging output. The default debugging level is 2.
You can dynamically change the debugging level in the crsctl
command or you can configure an initialization file for changing the debugging level, as described in "Creating an Initialization File to Contain the Debugging Level".
To obtain a list of resources that can be used for debugging, run the crsctl status resource
command.
My Oracle Support may ask you to enable tracing to capture additional information. Because the procedures described in this section may affect performance, only perform these activities with the assistance of My Oracle Support.
You can enable tracing for Oracle Clusterware resources by running the crsctl set trace
command, using the following syntax:
crsctl set trace module_name "component_name=tracing_level,..."
Run the crsctl set trace
command as the root
user, and supply the following information:
module_name
: The name of one of the following modules:
mdns
: Multicast domain name servergpnp
: Grid Plug and Play servicecss
: Cluster Synchronization Servicescrf
: Cluster Health Monitorcrs
: Cluster Ready Servicesctss
: Cluster Time Synchronization Serviceevm
: Event Managergipc
: Grid Interprocess Communicationcomponent_name
: The name of the component for one of the modules. See Table E-41 for a list of components.
tracing_level
: A number from 1
to 5
to indicate the level of detail you want the trace command to return, where 1 is the least amount of tracing output and 5 provides the most detailed tracing output.