24

lsnrctl statusコマンドから次のエラーが発生します。

C:\Users\pna105>lsnrctl stat

 LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 08-OCT-2014 17:53
 :55

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

 Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
 TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   64-bit Windows Error: 2: No such file or directory
 Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))
 TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
 TNS-00511: No listener
 64-bit Windows Error: 61: Unknown error

再起動する前は問題なく動作していましたが、現在は動作しておらず、Oracle ホームページにもアクセスできません。

tnsnames.oraは:

  ORACLE = 
  (DESCRIPTION =  
    (ADDRESS_LIST =  
      (ADDRESS = (PROTOCOL = TCP)(HOST = Localhost)(PORT = 1521))  
    )  
    (CONNECT_DATA =  
      (SERVICE_NAME = ORACLE)  
    )  
   )

   LISTENER_ORACLE =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))


  ORACLR_CONNECTION_DATA =
  (DESCRIPTION =
  (ADDRESS_LIST =
  (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
  )
   (CONNECT_DATA =
   (SID = CLRExtProc)
   (PRESENTATION = RO)
  )
  )

listener.oraは:(いくつかのスペースを追加することで問題を解決した、括弧が間違って配置されたためにエラーが発生しましたTNS-12518)

   SID_LIST_LISTENER =
   (SID_LIST =
   (SID_DESC =
    (SID_NAME = ORACLE)
    (ORACLE_HOME = C:\app\PNA105\product\11.2.0\dbhome_1)
  )  
  (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = C:\app\PNA105\product\11.2.0\dbhome_1)
    (PROGRAM = extproc)
   )
   (SID_DESC =
  (SID_NAME = CLRExtProc)
  (ORACLE_HOME = C:\app\PNA105\product\11.2.0\dbhome_1)
  (PROGRAM = extproc)
  (ENVS = "EXTPROC_DLLS=ONLY:C:\app\PNA105\product\11.2.0\dbhome_1\bin\oraclr11.dll")
  )
  )

  LISTENER =
 (DESCRIPTION_LIST =
  (DESCRIPTION =
  (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  )
  )

  ADR_BASE_LISTENER = C:\app\PNA105

以下はlsnrctl startコマンドの出力です

C:\Users\pna105>lsnrctl start

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 08-OCT-2014 18:26
:22

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

 Starting tnslsnr: please wait...

  TNS-12560: TNS:protocol adapter error
   TNS-00530: Protocol adapter error

以下は、ログ ファイルから必要な最後のエントリです。

 Started with pid=14784
 Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
 Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
 Listener completed notification to CRS on start

 09-OCT-2014 15:46:01 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=INL007306$))
(SERVICE_NAME=oracle)) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=57389)) * 
establish * oracle * 12518
TNS-12518: TNS:listener could not hand off client connection
TNS-12560: TNS:protocol adapter error
 TNS-00530: Protocol adapter error
 64-bit Windows Error: 203: Unknown error
 Dynamic address is already listened on (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp) 
 (HOST=127.0.0.1)(PORT=1521)))
 09-OCT-2014 15:46:06 * service_register * oracle * 0
 Thu Oct 09 15:46:11 2014
 09-OCT-2014 15:46:11 * service_update * oracle * 0
 09-OCT-2014 15:46:12 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=INL007306$))
 (SERVICE_NAME=oracle)) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=57393)) * 
  establish * oracle * 0
 09-OCT-2014 15:46:12 * service_update * oracle * 0
 09-OCT-2014 15:46:13 * (CONNECT_DATA=(CID=(PROGRAM=)(HOST=__jdbc__)(USER=INL007306$))
 (SERVICE_NAME=oracle)) * (ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=57394)) * 
 establish * oracle * 0

TNS-12518 の解決を試み、リスナーは開始されましたが、まだ Oracle ホームページにアクセスできません

lnsrctl stat の出力

C:\Users\pna105>lsnrctl stat

LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 09-OCT-2014 17:16
:56

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

 Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
 STATUS of the LISTENER
  ------------------------
 Alias                     LISTENER
 Version                   TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Produ
 ction
 Start Date                09-OCT-2014 15:45:58
 Uptime                    0 days 1 hr. 30 min. 58 sec
 Trace Level               off
 Security                  ON: Local OS Authentication
 SNMP                      OFF
 Listener Parameter File   C:\app\PNA105\product\11.2.0\dbhome_1\network\admin\li
 stener.ora
 Listener Log File         c:\app\pna105\diag\tnslsnr\INL007306\listener\alert\lo
 g.xml
 Listening Endpoints Summary...
 (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
 (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))
  Services Summary...
  Service "CLRExtProc" has 1 instance(s).
  Instance "CLRExtProc", status UNKNOWN, has 1 handler(s) for this service...
  Service "ORACLE" has 2 instance(s).
  Instance "ORACLE", status UNKNOWN, has 1 handler(s) for this service...
  Instance "oracle", status READY, has 1 handler(s) for this service...
  Service "PLSExtProc" has 1 instance(s).
  Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
  Service "oracleXDB" has 1 instance(s).
  Instance "oracle", status READY, has 1 handler(s) for this service...

コマンドは正常に完了しました

4

14 に答える 14

23

I had the same problem. Solution in my case: run CMD as ADMINISTRATOR. then type and execute: "lsnrctl start" wait about 2 minutes then should work. (in my case was only 50 seconds, but just to be on the safe side)

于 2015-04-20T04:49:20.893 に答える
7

1. 環境変数を確認します (ユーザーではなくシステムに対して設定する必要があります)。

ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server
ORACLE_SID = XE

2.listener.ora に正しい定義があるかどうかを確認します。

XE =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

3. サービスを再起動します (サービス > OracleServiceXE)。

その後、OracleXETNSListenerXE という新しいサービスが表示される場合があります。
古い OracleXETNSListener がすでに存在します。

両方を開始したところ、接続に成功しました。

編集:

すべてが実行されているにもかかわらず接続できない場合は、エラーがないかどうかを確認してください: ORA-12557: TNS:protocol adapter not loadable

エラーを修正するには、環境変数に戻り、今度はPathという名前の変数を編集します。C:\oraclexe\app\oracle\product\11.2.0\server\binが最初のどこかにあることを確認してください。これは、別のバージョンの Oracle DB を指す他のパスより確実に前です。

于 2018-03-06T13:04:13.430 に答える
3

ORACLE_HOME 環境変数が正しい Oracle ホームを指していることを確認してください。私の場合、別のソフトウェアのインストールによって変更されました。

于 2014-10-30T10:54:58.203 に答える
3

Windowsの11.201でも同じ問題がありました。後: 11.203 64 ビット サーバーとクライアントを新しいフォルダーに追加インストールします。インストール直後に PATH 環境変数が変更されました。リスナー サービスの再起動後にリスナーでエラーが発生しました。私の場合、夜間と多数の Windows 更新があったため、Windows サーバーの再起動が役に立ちました。また、 http://pavandba.com/tag/tns-12560-tns-protocol-adapter-error/に従って listener.log ファイルを消去しましたが、驚くほど大きかったです。

于 2014-10-17T10:32:35.280 に答える
2

コンピューター名を変更した後、同じことが起こりました。これを修正するには、listener.ora ファイルを見つけて、古いコンピュータ名を新しいコンピュータ名に置き換えます。

于 2016-10-08T20:45:22.883 に答える
1

私は同じ問題に遭遇し、その理由は次のとおりです。私は個人のWindows PCです。そして、コンピューター名を変更しましたが、同じことがlistener.oraに反映されませんでした。更新されたホスト名で ORACLE_HOME\network\ADMIN\listener.ora を更新すると、問題が修正されました。

于 2016-03-29T13:59:24.923 に答える
1

Windows 2012 サーバーに oracle 11gR2 をインストールすると、同様の問題が発生します。管理者権限で cmd.exe を実行し、「lsnrctl start LISTENER」を実行すると、問題は解決します。

于 2015-12-21T11:27:11.633 に答える
1

私の場合、コンソールからリスナーを起動しようとしました:

> lsnrctl star

このコマンドは、次のエラーを出力しました。

TNS-12560: TNS:protocol adapter error
TNS-00583: Valid node checking: unable to parse configuration parameters

そのため、次のアクションを実行しました。

  1. Oraclelistener.oraまたはsqlnet.oraファイルに特殊文字が含まれているかどうかを確認する
  2. Oraclelistener.oraまたは sqlnet.ora` ファイルの形式または構文が間違っていないか確認してください
  3. Oraclelistener.oraまたはsqlnet.oraファイルに、Oracle パーサーで受け入れられない左揃えの括弧があるかどうかを確認してください。

これらのファイルを見て、適切な構文を確認してください。可能であれば、sqlnet.ora を削除または名前変更し、リスナーを再起動してみてください。または、listener.ora または sqlnet.ora ファイルの両方を削除/名前変更して、適切に再作成します。これらは間違いなく問題を解決します。

于 2016-11-17T15:59:25.003 に答える