转自:http://blog.csdn.net/zjliu1984/archive/2009/06/16/4273304.aspx
对于DBA来说,启动和关闭oracle监听器是很基础的任务,但是Linux系统管理员或者程序员有时也需要在开发数据库中做一些基本的DBA操作,因此了解一些基本的管理操作对他们来说很重要。
本文将讨论用LSNRCTL命令启动、关闭和查看监听器的状态的方法。
怎样启动、关闭和重新启动oracle监听器
在启动、关闭或者重启oracle监听器之前确保使用lsnrctl status命令检查oracle监听器的状态。除了得到监听器的状态之外,你还可以从lsnrctl status命令的输出中得到如下的信息:
- 监听器的启动时间
- 监听器的运行时间
- 监听器参数文件listener.ora的位置,通常位于$ORACLE_HOME/network/admin目录下
- 监听器日志文件的位置
如果oracle监听器没用运行,你将得到如下的信息
[c-sharp] view plain copy print ?
- 1. $ lsnrctl status
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:39
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
- 8. TNS-12541: TNS:no listener
- 9. TNS-12560: TNS:protocol adapter error
- 10. TNS-00511: No listener
- 11. Linux Error: 111: Connection refused
- 12. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
- 13. TNS-12541: TNS:no listener
- 14. TNS-12560: TNS:protocol adapter error
- 15. TNS-00511: No listener
- 16. Linux Error: 2: No such file or directory
1. $ lsnrctl status 2. 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:39 4. 5. Copyright (c) 1991, 2007, Oracle. All rights reserved. 6. 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521))) 8. TNS-12541: TNS:no listener 9. TNS-12560: TNS:protocol adapter error 10. TNS-00511: No listener 11. Linux Error: 111: Connection refused 12. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))) 13. TNS-12541: TNS:no listener 14. TNS-12560: TNS:protocol adapter error 15. TNS-00511: No listener 16. Linux Error: 2: No such file or directory
如果oracle监听器正在运行,你将得到如下信息
[c-sharp] view plain copy print ?
- 1. $ lsnrctl status
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:02
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
- 8. STATUS of the LISTENER
- 9. ————————
- 10. Alias LISTENER
- 11. Version TNSLSNR for Linux: Version 11.1.0.6.0 - Production
- 12. Start Date 29-APR-2009 18:43:13
- 13. Uptime 6 days 21 hr. 43 min. 49 sec
- 14. Trace Level off
- 15. Security ON: Local OS Authentication
- 16. SNMP OFF
- 17. Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora
- 18. Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
- 19. Listening Endpoints Summary…
- 20. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
- 21. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
- 22. Services Summary…
- 23. Service “devdb” has 1 instance(s).
- 24. Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
- 25. Service “devdb.thegeekstuff.com” has 1 instance(s).
- 26. Instance “devdb”, status READY, has 1 handler(s) for this service…
- 27. Service “devdbXDB.thegeekstuff.com” has 1 instance(s).
- 28. Instance “devdb”, status READY, has 1 handler(s) for this service…
- 29. Service “devdb_XPT.thegeekstuff.com” has 1 instance(s).
- 30. Instance “devdb”, status READY, has 1 handler(s) for this service…
- 31. The command completed successfully
1. $ lsnrctl status 2. 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:02 4. 5. Copyright (c) 1991, 2007, Oracle. All rights reserved. 6. 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521))) 8. STATUS of the LISTENER 9. ———————— 10. Alias LISTENER 11. Version TNSLSNR for Linux: Version 11.1.0.6.0 - Production 12. Start Date 29-APR-2009 18:43:13 13. Uptime 6 days 21 hr. 43 min. 49 sec 14. Trace Level off 15. Security ON: Local OS Authentication 16. SNMP OFF 17. Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora 18. Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml 19. Listening Endpoints Summary… 20. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521))) 21. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC))) 22. Services Summary… 23. Service “devdb” has 1 instance(s). 24. Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service… 25. Service “devdb.thegeekstuff.com” has 1 instance(s). 26. Instance “devdb”, status READY, has 1 handler(s) for this service… 27. Service “devdbXDB.thegeekstuff.com” has 1 instance(s). 28. Instance “devdb”, status READY, has 1 handler(s) for this service… 29. Service “devdb_XPT.thegeekstuff.com” has 1 instance(s). 30. Instance “devdb”, status READY, has 1 handler(s) for this service… 31. The command completed successfully
2.启动oracle监听器
如果oracle监听器没用运行,你可以用lsnrctl start命令启动oracle监听器,该命令将启动所有的监听器,如果你只想启动特定的监听器,可以再start后面指定监听器的名字,例如:lsnrctl start [listener-name]。
[c-sharp] view plain copy print ?
- 1. $ lsnrctl start
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:42
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. Starting /u01/app/oracle/product/11.1.0/bin/tnslsnr: please wait…
- 8.
- 9. TNSLSNR for Linux: Version 11.1.0.6.0 - Production
- 10. System parameter file is /u01/app/oracle/product/11.1.0/network/admin/listener.ora
- 11. Log messages written to /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
- 12. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
- 13. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
- 14.
- 15. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
- 16. STATUS of the LISTENER
- 17. ————————
- 18. Alias LISTENER
- 19. Version TNSLSNR for Linux: Version 11.1.0.6.0 - Production
- 20. Start Date 04-APR-2009 16:27:42
- 21. Uptime 0 days 0 hr. 0 min. 0 sec
- 22. Trace Level off
- 23. Security ON: Local OS Authentication
- 24. SNMP OFF
- 25. Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora
- 26. Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml
- 27. Listening Endpoints Summary…
- 28. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521)))
- 29. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
- 30. Services Summary…
- 31. Service “devdb” has 1 instance(s).
- 32. Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service…
- 33. The command completed successfully
1. $ lsnrctl start 2. 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:42 4. 5. Copyright (c) 1991, 2007, Oracle. All rights reserved. 6. 7. Starting /u01/app/oracle/product/11.1.0/bin/tnslsnr: please wait… 8. 9. TNSLSNR for Linux: Version 11.1.0.6.0 - Production 10. System parameter file is /u01/app/oracle/product/11.1.0/network/admin/listener.ora 11. Log messages written to /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml 12. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521))) 13. Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC))) 14. 15. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521))) 16. STATUS of the LISTENER 17. ———————— 18. Alias LISTENER 19. Version TNSLSNR for Linux: Version 11.1.0.6.0 - Production 20. Start Date 04-APR-2009 16:27:42 21. Uptime 0 days 0 hr. 0 min. 0 sec 22. Trace Level off 23. Security ON: Local OS Authentication 24. SNMP OFF 25. Listener Parameter File /u01/app/oracle/product/11.1.0/network/admin/listener.ora 26. Listener Log File /u01/app/oracle/diag/tnslsnr/devdb/listener/alert/log.xml 27. Listening Endpoints Summary… 28. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.2)(PORT=1521))) 29. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC))) 30. Services Summary… 31. Service “devdb” has 1 instance(s). 32. Instance “devdb”, status UNKNOWN, has 1 handler(s) for this service… 33. The command completed successfully
3.关闭oracle监听器
如果oracle监听器正在运行,可以使用lsnrctl stop命令关闭oracle监听器,该命令将关闭所有的监听器,如果你只想关闭特定的监听器,可以再stop后面指定监听器的名字,例如:lsnrctl stop [listener-name]
[c-sharp] view plain copy print ?
- 1. $ lsnrctl stop
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:37
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521)))
- 8. The command completed successfully
1. $ lsnrctl stop 2. 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:27:37 4. 5. Copyright (c) 1991, 2007, Oracle. All rights reserved. 6. 7. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521))) 8. The command completed successfully
4.重启oracle监听器
用lsnrctl reload重启监听器,此命令可以代替lsnrctl stop和lsnrctl start。重启将会在不需要关闭和启动监听器的情况下读取listener.ora的配置。
[c-sharp] view plain copy print ?
- # $ 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监听器帮助
出如下:
nrctl 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.
[c-sharp] view plain copy print ?
- 1. $ lsnrctl help
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:12:09
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. The following operations are available
- 8. An asterisk (*) denotes a modifier or extended command:
- 9.
- 10. start stop status
- 11. services version reload
- 12. save_config trace spawn
- 13. change_password quit exit
- 14. set* show*
1. $ lsnrctl help 2. 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:12:09 4. 5. Copyright (c) 1991, 2007, Oracle. All rights reserved. 6. 7. The following operations are available 8. An asterisk (*) denotes a modifier or extended command: 9. 10. start stop status 11. services version reload 12. save_config trace spawn 13. change_password quit exit 14. set* show*
2.得到指定监听器命令的详细帮助信息
可以使用lsnrctl help得到指定的命令的详细帮助信息。如下所示
[c-sharp] view plain copy print ?
- 1. $ lsnrctl help show
- 2.
- 3. LSNRCTL for Linux: Version 11.1.0.6.0 - Production on 04-APR-2009 16:22:28
- 4.
- 5. Copyright (c) 1991, 2007, Oracle. All rights reserved.
- 6.
- 7. The following operations are available after show
- 8. An asterisk (*) denotes a modifier or extended command:
- 9.
- 10. rawmode displaymode
- 11. rules trc_file
- 12. trc_directory trc_level
- 13. log_file log_directory
- 14. log_status current_listener
- 15. inbound_connect_timeout startup_waittime
- 16. snmp_visible save_config_on_stop
- 17. dynamic_registration