web-dev-qa-db-ja.com

Oracle:接続のオープンに長い遅延

11g2開発サーバーでinitial接続を開くのに非常に長い遅延(約2分)が発生しています。ときどきORA-28547: connection to server failed, probable Oracle Net admin errorが表示され、まったく接続されません。

ただし、問題は2回目の試行で消えます

この問題は複数のクライアントで発生します:(occiを使用して)開発中のアプリ、SQLPlus、SQLDeveloper。

編集:追加情報。 straceを使用して、クライアントsqlplusがOracle DBサーバーの正しいポートでTCP=接続を確立していることを確認します。一部のデータは正常に交換され、クライアントはソケットの読み取りでハングします。

ハングした接続の場合:read(6、

良好な接続の場合:read(6、 "\ 0\274\0\0\6\0\0\0\0\0\1\6\0x86_64/Linux 2.4.xx" ...、8208)= 188

良好な接続はすぐにAUTH_SESSKEYを受信し、認証に使用されます。したがって、ハングはパスワード認証が完了する前に発生します。

select * from v$sgainfoからの出力は次のとおりです。

Fixed SGA Size                        2212448       No
Redo Buffers                          4980736       No
Buffer Cache Size                    20971520       Yes
Shared Pool Size                    155189248       Yes
Large Pool Size                      29360128       Yes
Java Pool Size                        4194304       Yes
Streams Pool Size                     4194304       Yes
Shared IO Pool Size                         0       Yes
Granule Size                          4194304       No
Maximum SGA Size                    263049216       No
Startup overhead in Shared Pool      75497472       No
Free SGA Memory Available            41943040   

編集:

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 12-NOV-2012 23:54:07

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=xoesrpora)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production
Start Date                12-SEP-2012 18:17:27
Uptime                    61 days 5 hr. 36 min. 39 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /xoesrpora/linux/app/Oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
Listener Log File         /xoesrpora/linux/app/Oracle/diag/tnslsnr/xoesrpora/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=1521)))
Services Summary...
Service "achen_l1ads.xoesr" has 1 instance(s).
  Instance "achenl1ads", status READY, has 2 handler(s) for this service...
Service "anpingl1ads.xoesr" has 1 instance(s).
  Instance "anpingl1ads", status READY, has 2 handler(s) for this service...
Service "bgoldl1ads.xoesr" has 1 instance(s).
  Instance "bgoldl1ads", status READY, has 2 handler(s) for this service...
Service "bjodev01.xoesr" has 1 instance(s).
  Instance "bjodev01", status READY, has 2 handler(s) for this service...
Service "bjodev02" has 1 instance(s).
  Instance "bjodev02", status READY, has 2 handler(s) for this service...
Service "chen_l1ads.xoesr" has 1 instance(s).
  Instance "chenl1ads", status READY, has 2 handler(s) for this service...
Service "gtullyl1ads.xoesr" has 1 instance(s).
  Instance "gtullyl1ads", status READY, has 2 handler(s) for this service...
Service "jbentley.xoesr" has 1 instance(s).
  Instance "jbentley", status READY, has 2 handler(s) for this service...
Service "jbentleyina.xoesr" has 1 instance(s).
  Instance "jbentleyina", status READY, has 2 handler(s) for this service...
Service "jmiller1ads.xoesr" has 1 instance(s).
  Instance "jmiller1ads", status READY, has 2 handler(s) for this service...
Service "l1ads.xoesr" has 1 instance(s).
  Instance "l1ads", status READY, has 2 handler(s) for this service...
Service "l1adsSWIT.xoesr" has 1 instance(s).
  Instance "l1adsSWIT", status READY, has 2 handler(s) for this service...
Service "mikedb.xoesrpora" has 1 instance(s).
  Instance "mikedb", status READY, has 2 handler(s) for this service...
Service "nkovoorl1ads.xoesr" has 1 instance(s).
  Instance "nkovoorl1ads", status READY, has 2 handler(s) for this service...
Service "nrekerl1ads.xoesr" has 1 instance(s).
  Instance "nrekerl1ads", status READY, has 2 handler(s) for this service...
The command completed successfully
xoesrpora[51]$ lsnrctl service

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 12-NOV-2012 23:55:07

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(Host=xoesrpora)(PORT=1521)))
Services Summary...
Service "achen_l1ads.xoesr" has 1 instance(s).
  Instance "achenl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:5 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 30680>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=34877))
Service "anpingl1ads.xoesr" has 1 instance(s).
  Instance "anpingl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:39033 refused:0 current:16 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 31454>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=13523))
Service "bgoldl1ads.xoesr" has 1 instance(s).
  Instance "bgoldl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:40133 refused:5 current:17 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 22276>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=16808))
Service "bjodev01.xoesr" has 1 instance(s).
  Instance "bjodev01", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:0 refused:0 current:2 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 1112>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=9362))
Service "bjodev02" has 1 instance(s).
  Instance "bjodev02", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:5324 refused:0 current:7 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 402>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=43643))
Service "chen_l1ads.xoesr" has 1 instance(s).
  Instance "chenl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:49787 refused:0 current:15 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 9501>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=57313))
Service "gtullyl1ads.xoesr" has 1 instance(s).
  Instance "gtullyl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:17384 refused:0 current:20 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 26905>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=50258))
Service "jbentley.xoesr" has 1 instance(s).
  Instance "jbentley", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:0 refused:0 current:0 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 10737>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=52195))
Service "jbentleyina.xoesr" has 1 instance(s).
  Instance "jbentleyina", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:17 refused:0 state:ready
         LOCAL SERVER
      "D000" established:8993 refused:0 current:14 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 18471>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=28700))
Service "jmiller1ads.xoesr" has 1 instance(s).
  Instance "jmiller1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:25215 refused:0 current:17 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 6473>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=64221))
Service "l1ads.xoesr" has 1 instance(s).
  Instance "l1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:9049 refused:0 current:17 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 18150>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=52593))
Service "l1adsSWIT.xoesr" has 1 instance(s).
  Instance "l1adsSWIT", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:4144 refused:0 current:20 max:1022 state:ready
         DISPATCHER <machine: xoesrpora.aer.com, pid: 26656>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora.aer.com)(PORT=45006))
Service "mikedb.xoesrpora" has 1 instance(s).
  Instance "mikedb", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:0 refused:0 current:2 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 17111>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=34540))
Service "nkovoorl1ads.xoesr" has 1 instance(s).
  Instance "nkovoorl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:32557 refused:0 current:12 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 3601>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=21440))
Service "nrekerl1ads.xoesr" has 1 instance(s).
  Instance "nrekerl1ads", status READY, has 2 handler(s) for this service...
    Handler(s):
      "DEDICATED" established:0 refused:0 state:ready
         LOCAL SERVER
      "D000" established:41491 refused:0 current:7 max:1022 state:ready
         DISPATCHER <machine: xoesrpora, pid: 25743>
         (ADDRESS=(PROTOCOL=tcp)(Host=xoesrpora)(PORT=17368))
The command completed successfully
2
ThomasMcLeod

適切な方法は、sqlnetトレースです。設定は Net Services Reference で説明されています。出力はOracleサポートに役立ちます。私の知る限りでは、ドキュメントが公開されていますが、手掛かりを取得することができます

クライアントのsqlnet.oraに次のパラメータを設定します(クライアントはtnsnames.oraを使用する必要があります)

 DIAG_ADR_ENABLED = on 
 trace_directory_client = 
 trace_level_client = admin 
 trace_uniqe_client = on 
 trace_timestamp_client = on 

これが本番システムでない場合は、データベースサーバーのsqlnet.oraでもトレースを有効にする必要があります。

 DIAG_ADR_ENABLED = on 
 trace_directory_server = 
 trace_level_server = admin 
 trace_uniqe_server = on 
 trace_timestamp_server = on 

各トレースのタイムスタンプ情報を使用すると、サーバーファイルとクライアントファイルの出力を同期させることができます。

$Oracle_HOME/binディレクトリには、sqlnetトレースを分析するツールtrcasstもあります(ただし、trace_timesamp...=offがある場合のみ)。 ここ ヒントが見つかります。しかし、たぶん生の痕跡がもっと役に立ちます。また、trace_level_...=userまたはadminを設定すると、トレース情報のサイズを削減できます。

1
miracle173