• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

The Geek Diary

CONCEPTS | BASICS | HOWTO

  • OS
    • Linux
    • CentOS/RHEL
    • Solaris
    • Oracle Linux
    • Linux Services
    • VCS
  • Database
    • oracle
    • oracle 12c
    • ASM
    • mysql
    • MariaDB
    • Data Guard
  • DevOps
    • Docker
    • Shell Scripting
  • Interview Questions
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

Difference between using srvctl vs using sqlplus for start/stop one or more Oracle Database Instances

By admin

The Problem

We have had some instances where it seemed that starting rac databases through sqlplus caused performance issues (high load on database server ). Restarting the nodes using srvctl seemed to resolve the performance issue. “Is there any difference between using srvctl vs using sqlplus for starting or stopping one or more database nodes.”?

The Solution

The Differences between SQLPLUS and SRVCTL

There are some differences between the use of SQLPLUS and SRVCTL utilities.

– Both should result in the instance startup, but Oracle always recommend the use of the SRVCTL due to the fact that the SRVCTL does more, i.e. SRVCTL will perform a dependency analysis and will inform about cluster related problem if they exist, in a better way than the SQLPLUS which may just say that the instance is not starting. The SRVCTL command will try to start dependent resources (like the vip/ons/listeners) in case they are not running.

– The SRVCTL utility always do some kind of pre-start of the instances such as updating the OCR information instead of waiting for the check script of the instance resource to detect this instance startup and update the OCR.

– With SRVCTL, the root user OS setup is used since inherited from the crsd.bin that will start the instances as oracle user. With SQLPLUS, the oracle user OS setup is used. Having different user setups for root or oracle will make that the performance can be different (fragmented sga or not, another ‘solaris’ project setup, …)

The common part however is that SRVCTL is using SQLPLUS to start/stop the instances.

– The SRVCTL tool manages configuration information that is used by several other Oracle tools. For example, Enterprise Manager uses the configuration information that SRVCTL generates to discover and monitor nodes in your cluster.

– Note that the ‘srvctl start database/instance’ command will not start all enabled and non-running services that have the listed instances either as preferred or available instances in 10g.

Filed Under: oracle, Oracle 10g, Oracle 11g, RAC

Some more articles you might also be interested in …

  1. TRUNCATE TABLE not releasing space from tablespace
  2. Oracle Database : Shutdown Basics (How to Shutdown Oracle Database)
  3. Oracle sql script to report the list of files stored in ASM and CURRENTLY NOT OPENED
  4. How to Rename Diskgroup having OCR, Vote File and SPILE
  5. Troubleshooting Common ORA-1157 Errors (cannot identify/lock data file)
  6. Oracle SQL Script to Detect Tablespace Fragmentation
  7. Oracle Database : script to create a “CREATE SYNONYM Script”
  8. Oracle Database 18c : How to Merge Partitions And Subpartitions Online
  9. Oracle Database 12c2 : CPU_COUNT is Wrong
  10. How to Modify an Existing ASM Spfile in a RAC Environment

You May Also Like

Primary Sidebar

Recent Posts

  • How to disable ACPI in CentOS/RHEL 7
  • How to Use real-time query to access data on a physical standby database
  • CentOS/RHEL 8: “ACPI MEMORY OR I/O RESET_REG” Server Hung after reboot
  • How to Create a Physical Standby Database by Using SQL and RMAN Commands
  • Archives
  • Contact Us
  • Copyright

© 2021 · The Geek Diary