Oracle LSNRCTL:监听器的启动和关闭

日期: 2009-11-23 作者:zjliu1984 来源:TechTarget中国 英文

  对于DBA来说,启动和关闭Oracle监听器是很基础的任务,但是Linux系统管理员或者程序员有时也需要在开发数据库中做一些基本的DBA操作,因此了解一些基本的管理操作对他们来说很重要。

  本文将讨论用LSNRCTL命令启动、关闭和查看监听器的状态的方法。

  怎样启动、关闭和重新启动oracle监听器

  在启动、关闭或者重启oracle监听器之前确保使用lsnrctl status命令检查oracle监听器的状态。除了得到监听器的状态之外,你还可以从lsnrctl status命令的输出中得到如下的信息:

  监听器的启动时间

  监听器的运行时间

  监听器参数文件listener.ora的位置,通常位于$ORACLE_HOME/network/admin目录下

  监听器日志文件的位置

  如果oracle监听器没用运行,你将得到如下的信息

  view plaincopy to clipboardprint?
  $ lsnrctl status
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:39
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(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=EXTPROC)))
  TNS-12541: TNS:no listener
  TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
  Linux Error: 2: No such file or directory
  $ lsnrctl status
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:39
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(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=EXTPROC)))
  TNS-12541: TNS:no listener
  TNS-12560: TNS:protocol adapter error
  TNS-00511: No listener
  Linux Error: 2: No such file or directory

  如果oracle监听器正在运行,你将得到如下信息

  view plaincopy to clipboardprint?
  $ lsnrctl status
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:02
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  STATUS of the LISTENER
  ————————
  Alias LISTENER
  Version TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  Start Date 29-APR-2009 18:43:13
  Uptime 6 days 21 hr. 43 min. 49 sec
  Trace Level off
  Security ON: Local OS Authentication
  SNMP OFF
  Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora
  Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening Endpoints Summary…
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Services Summary…
  Service “devdb” has 1 instance(s).
  Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
  Service “devdb.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  Service “devdbXDB.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  Service “devdb_XPT.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  The command completed successfully
  $ lsnrctl status
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:02
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  STATUS of the LISTENER
  ————————
  Alias LISTENER
  Version TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  Start Date 29-APR-2009 18:43:13
  Uptime 6 days 21 hr. 43 min. 49 sec
  Trace Level off
  Security ON: Local OS Authentication
  SNMP OFF
  Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora
  Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening Endpoints Summary…
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Services Summary…
  Service “devdb” has 1 instance(s).
  Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
  Service “devdb.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  Service “devdbXDB.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  Service “devdb_XPT.thegeekstuff.com” has 1 instance(s).
  Instance “devdb”, status READY, has 1 handler(s) for this service…
  The command completed successfully

  2.启动oracle监听器

  如果oracle监听器没用运行,你可以用lsnrctl start命令启动oracle监听器,该命令将启动所有的监听器,如果你只想启动特定的监听器,可以再start后面指定监听器的名字,例如:lsnrctl start [listener-name]。

   view plaincopy to clipboardprint?
  $ lsnrctl start
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:42
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Starting /u01/app/oracle/product/11.1.0/bin/tnslsnr: please wait…
  TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  System parameter file is /u01/app/oracle/product/11.1.0/network/admin/listener.ora
  Log messages written to /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  STATUS of the LISTENER
  ————————
  Alias LISTENER
  Version TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  Start Date 04-APR-2009 16:27:42
  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/11.1.0/network/admin/listener.ora
  Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening Endpoints Summary…
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Services Summary…
  Service “devdb” has 1 instance(s).
  Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
  The command completed successfully
  $ lsnrctl start
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:42
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Starting /u01/app/oracle/product/11.1.0/bin/tnslsnr: please wait…
  TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  System parameter file is /u01/app/oracle/product/11.1.0/network/admin/listener.ora
  Log messages written to /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  STATUS of the LISTENER
  ————————
  Alias LISTENER
  Version TNSLSNR for Linux: Version 11.1.0.6.0 – Production
  Start Date 04-APR-2009 16:27:42
  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/11.1.0/network/admin/listener.ora
  Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
  Listening Endpoints Summary…
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
  Services Summary…
  Service “devdb” has 1 instance(s).
  Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
  The command completed successfully

  3.关闭oracle监听器

  如果oracle监听器正在运行,可以使用lsnrctl stop命令关闭oracle监听器,该命令将关闭所有的监听器,如果你只想关闭特定的监听器,可以再stop后面指定监听器的名字,例如:lsnrctl stop [listener-name]

  view plaincopy to clipboardprint?
  $ lsnrctl stop
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:37
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  The command completed successfully
  $ lsnrctl stop
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:27:37
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  The command completed successfully

  4.重启oracle监听器

  用lsnrctl reload重启监听器,此命令可以代替lsnrctl stop和lsnrctl start。重启将会在不需要关闭和启动监听器的情况下读取listener.ora的配置。

  view plaincopy to clipboardprint?
  $ lsnrctl reload
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 17:03:31
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  The command completed successfully
  $ lsnrctl reload
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 17:03:31
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
  The command completed successfully

  Oracle监听器帮助

  1.查看所有的监听器命令

  lsnrctl hep命令可以显示所有可用的监听器命令。在oracle11g中其输出如下:

  start – Start the Oracle listener
  stop – Stop the Oracle listener
  status – Display the current status of the Oracle listener
  services – Retrieve the listener services information
  version – Display the oracle listener version information
  reload – This will reload the oracle listener SID and parameter files. This is equivalent to lsnrctl stop and lsnrctl start.
  save_config – This will save the current settings to the listener.ora file and also take a backup of the listener.ora file before overwriting it. If there are no changes, it will display the message “No changes to save for LISTENER”
  trace – Enable the tracing at the listener level. The available options are ‘trace OFF’, ‘trace USER’, ‘trace ADMIN’ or ‘trace SUPPORT’
  spawn – Spawns a new with the program with the spawn_alias mentioned in the listener.ora file
  change_password – Set the new password to the oracle listener (or) change the existing listener password.
  show – Display log files and other relevant listener information.
  view plaincopy to clipboardprint?
  $ lsnrctl help
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:12:09
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  The following operations are available
  An asterisk (*) denotes a modifier or extended command:
  start stop status
  services version reload
  save_config trace spawn
  change_password quit exit
  set* show*
  $ lsnrctl help
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:12:09
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  The following operations are available
  An asterisk (*) denotes a modifier or extended command:
  start stop status
  services version reload
  save_config trace spawn
  change_password quit exit
  set* show*

  2.得到指定监听器命令的详细帮助信息

  可以使用lsnrctl help得到指定的命令的详细帮助信息。如下所示

  view plaincopy to clipboardprint?
  $ lsnrctl help show
  LSNRCTL for Linux: Version 11.1.0.6.0 – Production on 04-APR-2009 16:22:28
  Copyright (c) 1991, 2007, Oracle. All rights reserved.
  The following operations are available after show
  An asterisk (*) denotes a modifier or extended command:
  rawmode displaymode
  rules trc_file
  trc_directory trc_level
  log_file log_directory
  log_status current_listener
  inbound_connect_timeout startup_waittime
  snmp_visible save_config_on_stop
  dynamic_registration

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐