SAPCTL Functionality and Usage for Oracle RAC environments
Hello,
Now we are going to show the functionality and the usage of sapctl service in RAC environments. Normally between srvctl, crsctl, sapctl you can get confuse with the commands you need to administrate the SAP HA subsystems (ASCS, ERS, DV, etc)
What does SAPCTL does?
1. You can create and remove any Oracle Clusterware configuration of the SAP HA subsystem.
2. You can start and stop the SAP HA subsystem that are created in the Oracle Clusterware, you can choose to start/stop as a whole or individual components.
3. You can check the status of any SAP HA subsystem created in the Oracle Clusterware.
4. You can relocate any SAP HA subsystem created in the Oracle Clusterware.
SAPCTL usage and commands
This working example assumes that you have completed all of this steps:
1. Oracle Clusterware is installed.
2. Oracle RAC is installed.
3. You have installed SAP and the SAPCTL package.
4. You have 2 RAC nodes.
5. Only ASCS and ERS services are installed in Oracle Clusterware, the SAP Instance is installed in a different host (No cluster service).
Previous Info:
First RAC Node: erpdb01
Second RAC Node: erpdb02
SAP SID: PRD
Oracle Version: 11.2.0.4
ASCS Instance: ASCS01
ERS Instance: ERS20
SAPCTL Version: v8
First log in with sidadm to operating system level.
To check the status of all SAP HA subsystems installed in Oracle Clusterware you use this command:
sapctl status all -sapsid PRD
To check the status of individual SAP HA subsystems installed in Oracle Clusterware you use this command:
sapctl status abapvip/abapenq/abaprep -sapsid PRD
To check the which SAP Instace have been configured by Oracle Clusterware:
sapctl config
To stop all SAP HA subsystems use this command:
sapctl stop all -sapsid PRD
To stop all SAP HA subsystems use this command:
sapctl start all -sapsid PRD
As you can see the ERS Service will automatically started in the oposite node (erpdb02) where the ASCS service started.
If you need to start/stop individually any subsystem service you can use this commands:
sapctl start/stop abapenq -sapsid PRD
sapctl start/stop abaprep -sapsid PRD
sapctl start/stop abapvip -sapsid PRD (VIP IP for ASCS service)
Now the commands to manually relocate subsytem services between the RAC Nodes
ASCS01 service is running on erpdb01 -> relocate to erpdb02
ERS20 service is running on erpdb02
sapctl relocate -sapsid PRD -abapenq/-abaprep ASCS01/ERS20 -to erpdb02/erpdb01
After the relocation of ASCS service is done, the ERS service automatically relocates to oposite node.
Hope it helps you!, don’t forget to like and rate if it was helpful.
Excellent! Nice doc, it complements the rac commands from your previous doc.
Hi Michael,
Excellent blog mate!!
With Regards
Ashutosh Chaturvedi
Hi Michael,
This is useful doc for starting and stopping SAP service.
But for stopping DB services we need to use only crsctl right?
Regards,
Rupesh
Hi Rupesh.
We can stop the DB services using srvctl command...
crsctl will be used to stop the cluster and their services..
Regards,
Karthik.R
Dear Michael,
It's very nice doc the SAPCTL administration. Thanks for the sharing.
I have question about the SAPCTL configuratioon. Here is my question. Can you please check and help?
I need to install SAP on a separate server from the ORACLE RAC nodes. I need to understand if we can use the SAPCTL command to failover the SAP instances if we install the Clusterware on the Application Node.
That is :
Appreciate your quick response.