使用SRVCTL啟動例項與使用sqlplus啟動例項的區別

尛樣兒發表於2011-12-05
The difference between using srvctl vs using sqlplus for start/stop one or more database nodes [ID 753516.1]

  修改時間 29-JUL-2010     型別 HOWTO     狀態 ARCHIVED  

In this Document
  
  
  


Applies to:

Oracle Server - Enterprise Edition - Version: 10.1.0.2 to 11.1.0.6 - Release: 10.1 to 11.1
Information in this document applies to any platform.

Goal

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."

Solution

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, ...) Check  ,  .

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.
Check  - After Srvctl Start Database, Database Services Will Not Start Up Automatically 

For further details about the synthax of the SRVCTL command, please refer to the following documentation:

Oracle� Database Oracle Clusterware and Oracle Real Application Clusters Administration and
Deployment Guide
10g Release 2 (10.2)
Part Number B14197-01

大家要多多使用SRVCTL工具管理資料庫例項!

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23135684/viewspace-712764/,如需轉載,請註明出處,否則將追究法律責任。

相關文章