第一种情况:只是修改默认端口

1.当前监听状态:

  1. C:\Windows\system32>lsnrctl status
  2.  
  3. LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 05-3 -2015 11:48:45
  4.  
  5. Copyright (c) 1991, 2010, Oracle. All rights reserved.
  6.  
  7. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zen-pc)(PORT=1521)))
  8. LISTENER STATUS
  9. ------------------------
  10. 别名 LISTENER
  11. 版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
  12. 启动日期 05-3 -2015 11:38:26
  13. 正常运行时间 0 0 小时 10 23
  14. 跟踪级别 off
  15. 安全性 ON: Local OS Authentication
  16. SNMP OFF
  17. 监听程序参数文件 D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  18. 监听程序日志文件 d:\oracleinstall\diag\tnslsnr\zen-pc\listener\alert\log.xml
  19. 监听端点概要...
  20. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zen-pc)(PORT=1521)))
  21. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  22. 服务摘要..
  23. 服务 "CLRExtProc" 包含 1 个实例。
  24. 实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
  25. 服务 "orclXDB" 包含 1 个实例。
  26. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  27. 服务 "zen" 包含 1 个实例。
  28. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  29. 命令执行成功

2.修改监听端口:

  1. # listener.ora Network Configuration File: D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  2. # Generated by Oracle configuration tools.
  3.  
  4. SID_LIST_LISTENER =
  5. (SID_LIST =
  6. (SID_DESC =
  7. (SID_NAME = CLRExtProc)
  8. (ORACLE_HOME = D:\oracleInstall\product\11.2.0\dbhome_1)
  9. (PROGRAM = extproc)
  10. (ENVS = "EXTPROC_DLLS=ONLY:D:\oracleInstall\product\11.2.0\dbhome_1\bin\oraclr11.dll")
  11. )
  12. )
  13.  
  14. LISTENER =
  15. (DESCRIPTION_LIST =
  16. (DESCRIPTION =
  17. (ADDRESS = (PROTOCOL = TCP)(HOST = zen-pc)(PORT = 1522))
  18. (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
  19. )
  20. )
  21.  
  22. ADR_BASE_LISTENER = D:\oracleInstall

3.重启监听:

  1. C:\Windows\system32>lsnrctl status
  2.  
  3. LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 05-3 -2015 12:32:53
  4.  
  5. Copyright (c) 1991, 2010, Oracle. All rights reserved.
  6.  
  7. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zen-pc)(PORT=1522)))
  8. LISTENER STATUS
  9. ------------------------
  10. 别名 LISTENER
  11. 版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
  12. 启动日期 05-3 -2015 11:56:26
  13. 正常运行时间 0 0 小时 36 30
  14. 跟踪级别 off
  15. 安全性 ON: Local OS Authentication
  16. SNMP OFF
  17. 监听程序参数文件 D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  18. 监听程序日志文件 d:\oracleinstall\diag\tnslsnr\zen-pc\listener\alert\log.xml
  19. 监听端点概要...
  20. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zen-pc)(PORT=1522)))
  21. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  22. 服务摘要..
  23. 服务 "CLRExtProc" 包含 1 个实例。
  24. 实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
  25. 命令执行成功
  26.  
  27. C:\Windows\system32>
  28.  
  29. 手动注册:
  30. SQL> alter system register;
  31.  
  32. 系统已更改。
  33.  
  34. SQL>
  35.  
  36. C:\Windows\system32>lsnrctl status
  37.  
  38. LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 05-3 -2015 12:40:54
  39.  
  40. Copyright (c) 1991, 2010, Oracle. All rights reserved.
  41.  
  42. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zen-pc)(PORT=1522)))
  43. LISTENER STATUS
  44. ------------------------
  45. 别名 LISTENER
  46. 版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
  47. 启动日期 05-3 -2015 11:56:26
  48. 正常运行时间 0 0 小时 44 31
  49. 跟踪级别 off
  50. 安全性 ON: Local OS Authentication
  51. SNMP OFF
  52. 监听程序参数文件 D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  53. 监听程序日志文件 d:\oracleinstall\diag\tnslsnr\zen-pc\listener\alert\log.xml
  54. 监听端点概要...
  55. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zen-pc)(PORT=1522)))
  56. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  57. 服务摘要..
  58. 服务 "CLRExtProc" 包含 1 个实例。
  59. 实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
  60. 命令执行成功
  61.  
  62. C:\Windows\system32>

可以看出实例还是没有注册上。在oracle的实例中指定本地监听

  1. SQL> show parameters listener
  2.  
  3. NAME TYPE VALUE
  4. ------------------------------------ ----------- ------------------------------
  5. listener_networks string
  6. local_listener string
  7. remote_listener string
  8. SQL> alter system set local_listener=LISTENER ;
  9. alter system set local_listener=LISTENER
  10. *
  11. 1 行出现错误:
  12. ORA-02097: 无法修改参数, 因为指定的值无效
  13. ORA-00119: 系统参数 LOCAL_LISTENER 的说明无效
  14. ORA-00132: 语法错误或无法解析的网络名称 'LISTENER'
  15.  
  16. 修改D:\oracleInstall\product\11.2.0\dbhome_1\NETWORK\ADMIN\tnsnames.ora,添加:
  17. LISTENER22 =
  18. (DESCRIPTION =
  19. (ADDRESS_LIST =
  20. (ADDRESS = (PROTOCOL = TCP)(HOST = zen-pc)(PORT = 1522))
  21. )
  22. (CONNECT_DATA =
  23. (SERVER = DEDICATED)
  24. (SERVICE_NAME = zen)
  25. )
  26. )
  27.  
  28. 重新设置
  29. SQL> show parameters listener
  30.  
  31. NAME TYPE VALUE
  32. ------------------------------------ ----------- ------------------------------
  33. listener_networks string
  34. local_listener string
  35. remote_listener string
  36. SQL> alter system set local_listener=LISTENER22 ;
  37.  
  38. 系统已更改。
  39.  
  40. SQL> show parameters listener
  41.  
  42. NAME TYPE VALUE
  43. ------------------------------------ ----------- ------------------------------
  44. listener_networks string
  45. local_listener string LISTENER22
  46. remote_listener string
  47. SQL>
  48.  
  49. 再次查看监听状态
  50. C:\Windows\system32>lsnrctl status
  51.  
  52. LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 05-3 -2015 13:50:01
  53.  
  54. Copyright (c) 1991, 2010, Oracle. All rights reserved.
  55.  
  56. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zen-pc)(PORT=1522)))
  57. LISTENER STATUS
  58. ------------------------
  59. 别名 LISTENER
  60. 版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
  61. 启动日期 05-3 -2015 11:56:26
  62. 正常运行时间 0 1 小时 53 38
  63. 跟踪级别 off
  64. 安全性 ON: Local OS Authentication
  65. SNMP OFF
  66. 监听程序参数文件 D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  67. 监听程序日志文件 d:\oracleinstall\diag\tnslsnr\zen-pc\listener\alert\log.xml
  68. 监听端点概要...
  69. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zen-pc)(PORT=1522)))
  70. (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1521ipc)))
  71. 服务摘要..
  72. 服务 "CLRExtProc" 包含 1 个实例。
  73. 实例 "CLRExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
  74. 服务 "orclXDB" 包含 1 个实例。
  75. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  76. 服务 "zen" 包含 1 个实例。
  77. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  78. 命令执行成功
  79.  
  80. C:\Windows\system32>

至此监听成功注册上。

第二种情况监听的名字非默认,端口也非默认:

  1. SQL> show parameters listener
  2.  
  3. NAME TYPE VALUE
  4. ------------------------------------ ----------- ------------------------------
  5. listener_networks string
  6. local_listener string LISTENER22
  7. remote_listener string
  8. SQL>
  9.  
  10. C:\Windows\system32>lsnrctl status LISTENER_NEW
  11.  
  12. LSNRCTL for 64-bit Windows: Version 11.2.0.1.0 - Production on 05-3 -2015 14:13:22
  13.  
  14. Copyright (c) 1991, 2010, Oracle. All rights reserved.
  15.  
  16. 正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=zen-pc)(PORT=1522)))
  17. LISTENER STATUS
  18. ------------------------
  19. 别名 LISTENER_NEW
  20. 版本 TNSLSNR for 64-bit Windows: Version 11.2.0.1.0 - Production
  21. 启动日期 05-3 -2015 14:12:19
  22. 正常运行时间 0 0 小时 1 7
  23. 跟踪级别 off
  24. 安全性 ON: Local OS Authentication
  25. SNMP OFF
  26. 监听程序参数文件 D:\oracleInstall\product\11.2.0\dbhome_1\network\admin\listener.ora
  27. 监听程序日志文件 d:\oracleinstall\diag\tnslsnr\zen-pc\listener_new\alert\log.xml
  28. 监听端点概要...
  29. (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=zen-pc)(PORT=1522)))
  30. 服务摘要..
  31. 服务 "orclXDB" 包含 1 个实例。
  32. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  33. 服务 "zen" 包含 1 个实例。
  34. 实例 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
  35. 命令执行成功
  36.  
  37. C:\Windows\system32>

结论:1.实例注册监听,确切的说pmon在注册监听的时候监听的名称不重要。

2.pmon在注册监听的时候会找默认的端口1521,如果端口不是这个就需要手动指定监听的端口以便于pmon发现将实例注册上。

3.非标准端口的监听在指定监听名称时无需和tnsnames.ora中指定的网络名字相同,

即文中示例中的(LISTENER_NEW与 local_listener string LISTENER22可以不同)。应此乐大师此文中的与此相关的表述有些许失误http://blog.csdn.net/leshami/article/details/6396989

Oracle非默认监听的处理会遇到的问题以及处理方法的更多相关文章

  1. ORACLE启用非默认监听端口

    1.修改listener.ora文件 LISTENER_TEST =         (DESCRIPTION =                 (ADDRESS = (PROTOCOL = TCP ...

  2. 修改oracle默认监听端口

    修改oracle默认监听端口 oracle端口修改 主要是修改两个文件和修改oracle参数local_listener 1 查看当前监听状态 [oracle@test ~]$ lsnrctl sta ...

  3. Linux下启动Oracle服务和监听程序步骤

    Linux下启动Oracle服务和监听程序启动和关闭步骤整理如下: 1.安装oracle: 2.创建oracle系统用户: 3./home/oracle下面的.bash_profile添加几个环境变量 ...

  4. 如何让oracle DB、监听和oem开机启动(dbstart)

    如何让oracle DB.监听和oem开机启动(dbstart) 让oracle DB.监听和oem开机启动(dbstart) Oracle提供了伴随操作系统自动重启的功能,在Windows中,可以修 ...

  5. AIX下RAC搭建 Oracle10G(五)安装oracle、建立监听

    AIX下RAC搭建系列 AIX下RAC搭建 Oracle10G(五)安装oracle.建立监听 环境 节点 节点1 节点2 小机型号 IBM P-series 630 IBM P-series 630 ...

  6. linux下oracle数据库服务和监听的启动停止

    oracle数据库是重量级的,其管理非常复杂,将其在linux平台上的启动和关闭步骤整理一下. 安装完毕oracle以后,需要创建oracle系统用户,并在/home/oracle下面的.bash_p ...

  7. Linux下安装oracle遇到启动监听服务器启动失败

    1.发现监听服务器没有启动,则  lsntctl start 启动监听服务器: 2.发现TNS-12555问题: 3.查找TNS-12555错误,找到一个满意的答案: chmod  777 /var/ ...

  8. 配置Oracle数据库和监听随Linux系统自启动【转】

     配置Oracle数据库和监听随Linux系统自启动     在某些情况下需要在Linux操作系统上提供一种无人值守的随机启动Oracle的功能,目的也许仅仅是为了帮助那些对Oracle细节非常不关心 ...

  9. JavaScript监听手机物理返回键的两种解决方法

    JavaScript没有监听物理返回键的API,所以只能使用 popstate 事件监听. 有两个解决办法: 1.返回到指定的页面 pushHistory(); window.addEventList ...

随机推荐

  1. Index Generation

    Index Generation Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 230   Accepted: 89 Des ...

  2. NSURLConnection、NSURLSession

    NSURLConnection   1.准备网络资源地址:URL 注意:由于URL支持26个英文字母,数字和少数的几个特殊字符. 因此对于URL中包含非标准URL的字符,需要进行编码. iOS提供了函 ...

  3. jQuery实例属性和方法

    jQuery.fn = jQuery.prototype = {  //添加实例属性和方法   jquery : 版本   constructor : 修正指向问题   init() : 初始化和参数 ...

  4. 阅读《RobHess的SIFT源码分析:综述》笔记2

    今天开始磕代码部分. part1: 1. sift特征提取. img1_Feat = cvCloneImage(img1);//复制图1,深拷贝,用来画特征点 img2_Feat = cvCloneI ...

  5. Mac下启动Apache

    1.启动 sudo apachectl -k start 2.重新启动 sudo apachectl -k restart     //-------------------------------- ...

  6. hdu 1518 深搜

    #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #i ...

  7. C# 学习笔记01

    想写一个app可以访问数据库,实现对数据库的查询,修改等,突然发现知识实在有限,故选择C#来实现此app. 使用简单的三层架构来作为此app的架构.表现层(UI).业务逻辑层(BLL).数据访问层(D ...

  8. 【.net】创建属于自己的log组件——改进版

    在上一篇随笔中,建立了一个自己的Log简单日志记录类   可是在众多园友的提点下,对于线程,阻塞,资源竞争等都没有仔细的去了解 在这版的改进中,我们新加了线程操作,线程等待,以及多层的错误捕获.[不知 ...

  9. Android之记账本

    这个ColaBox记事本是我从网上下载下来的拿来学习一下的(APK下载点这里.) 从登记收入与开支的页面跳转到账单页面运用了SQL数据库的录入,整体表的结构为: db.execSQL("CR ...

  10. plsqldev与sqldeveloper

    plsqldev连接 1.连接不同服务器,要修改tnsnames.ora文件,具体如下修改如下位置 # tnsnames.ora Network Configuration File: \app\us ...