Oracle Database リスナーの起動方法と確認方法

スポンサーリンク
ORACLE

リスナーとは簡単に説明すると、Oracle Databaseサーバーに常駐しているプロセスで、クライアントからDatabaseへの接続依頼がきた時にDBサーバに接続要求を引き渡すプロセスです。

Oracle Database のリスナーを操作するlsnrctlコマンドについて、リスナー起動・リスナー停止・リスナー確認方法を紹介します。

リスナーが起動している場合

lsnrctl statusコマンドでリスナーの状態を確認します。

[oracle@oel77 ~]$ lsnrctl status

LSNRCTL for Linux: Version 18.0.0.0.0 - Production on 25-JAN-2020 23:22:08

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oel77)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 18.0.0.0.0 - Production
Start Date                25-JAN-2020 23:21:41
Uptime                    0 days 0 hr. 0 min. 26 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/18.0.0/dbhome_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/oel77/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oel77)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully

rootユーザでssコマンドでリスナープロセスを確認すれば、1521番ポート(デフォルト)で待ち構えていることが確認できます。

[root@oel77 ~]# ss -natp  |grep LISTEN |grep tnslsnr
LISTEN     0      128       [::]:1521                  [::]:*                   users:(("tnslsnr",pid=17652,fd=8))

リスナーが停止している場合

lsnrctl statusコマンドでリスナーの状態を確認します。

[oracle@oel77 ~]$ lsnrctl status

LSNRCTL for Linux: Version 18.0.0.0.0 - Production on 25-JAN-2020 23:25:26

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oel77)(PORT=1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 111: Connection refused
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1521)))
TNS-12541: TNS:no listener
 TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
   Linux Error: 2: No such file or directory

リスナー起動方法

lsnrctl startコマンドでリスナーを起動します。

[oracle@oel77 ~]$ lsnrctl start

LSNRCTL for Linux: Version 18.0.0.0.0 - Production on 25-JAN-2020 23:26:05

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

Starting /u01/app/oracle/product/18.0.0/dbhome_1/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 18.0.0.0.0 - Production
System parameter file is /u01/app/oracle/product/18.0.0/dbhome_1/network/admin/listener.ora
Log messages written to /u01/app/oracle/diag/tnslsnr/oel77/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oel77)(PORT=1521)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oel77)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for Linux: Version 18.0.0.0.0 - Production
Start Date                25-JAN-2020 23:26:05
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  ON: Local OS Authentication
SNMP                      OFF
Listener Parameter File   /u01/app/oracle/product/18.0.0/dbhome_1/network/admin/listener.ora
Listener Log File         /u01/app/oracle/diag/tnslsnr/oel77/listener/alert/log.xml
Listening Endpoints Summary...
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oel77)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully

リスナー停止方法

lsnrctl stopコマンドでリスナーを停止します。

[oracle@oel77 ~]$ lsnrctl stop

LSNRCTL for Linux: Version 18.0.0.0.0 - Production on 25-JAN-2020 23:24:45

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

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=oel77)(PORT=1521)))
The command completed successfully
[oracle@oel77 ~]$ which lsnrctl
/u01/app/oracle/product/18.0.0/dbhome_1/bin/lsnrctl