GRID: Dead Connection Connection or DCD and RAC 11.2 and higher (文档 ID 1136945.1) |
Applies to: Oracle Net Services - Version 11.2.0.1 and later Information in this document applies to any platform. GoalEnabling Dead Connection Detection (DCD) for RAC 11.2 or higher SolutionWhen DCD (SQLNET.EXPIRE_TIME) needs to be enabled, it must be enabled for the "RDBMS Oracle home" when considering using DCD for an 11.2 RAC installation. The reason is, Scan and Node TNS listeners run from the Grid Oracle home (default), but the bequeath connection is owned by the operating system account for the RDBMS Oracle home. This means the SQLNET.ORA file for the RDBMS Oracle home must have the parameter set. Example : Grid Oracle O/S user "grid" RDBMS Oracle home O/S user "Oracle" TNS listeners are running as "grid" user $ ps -ef |grep tnslsnr oracle 13858 27102 0 16:22 pts/1 00:00:00 grep tnslsnr grid 30445 1 0 12:16 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER_SCAN1 -inherit grid 31377 1 0 12:20 ? 00:00:00 /u01/app/11.2.0/grid/bin/tnslsnr LISTENER -inherit Make a SQL*Plus connection Microsoft Windows XP [Version 5.1.2600] (C) Copyright 1985-2001 Microsoft Corp. C:\sqlplus scott/tiger@test SQL*Plus: Release 11.2.0.1.0 Production on Mon Jun 28 16:24:30 2010 Copyright (c) 1982, 2010, Oracle. All rights reserved. Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production With the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP, Data Mining and Real Application Testing options SQL> And check the Process ID SQL> select p.spid, s.serial#, s.username, s.module, s.program, s.machine from v$process p,v$session s where p.addr = s.paddr and s.username = 'SCOTT'; SPID SERIAL# USERNAME ------------------------ ---------- ------------------------------ MODULE ------------------------------------------------ PROGRAM ------------------------------------------------ MACHINE ---------------------------------------------------------------- 23394 56998 SCOTT SQL*Plus sqlplus.exe UK-ORACLE\test Check that process ID and the user is "Oracle" $ ps -ef |grep 23394 oracle 23394 1 0 16:24 ? 00:00:00 oraclev11gr21 (LOCAL=NO) oracle 22927 19181 0 16:25 pts/4 00:00:00 grep 23394 |
欢迎光临 重庆思庄Oracle、Redhat认证学习论坛 (http://bbs.cqsztech.com/) | Powered by Discuz! X3.2 |