接上篇:Oracle服务器修改IP后

Oracle服务器更换IP后,办公网络里面可以正常访问了,外地的同事,连了vpn 也可以访问,以为可以收工回家,突然又有同事过来说,机房的服务器ping不通新的ip了。

换了几台机器,都ping不通,ping其他新ip一个段的服务器又正常,也可以ssh,又试了下以前的ip地址,可以ping通。
总结起来,ping不通的服务器都是Oracle服务器在同一个网段的服务器,以前都是10段的,Oracle服务器换了ip后,外部访问的地址就不是10段了,但是同一个段的服务器,又不能去另一个路由器绕一圈回来访问192段,所有不能访问。(猜测)

Oracle服务器路由如下,默认访问地址为192段

[oracle@venn01 admin]$ route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
.xx.xx. * 255.255.255.0 U eth1
.xx.xx. * 255.255.255.0 U virbr0
.xx.xx. * 255.255.255.0 U eth0
link-local * 255.255.0.0 U eth0
link-local * 255.255.0.0 U eth1
default .xx.xx.x 0.0.0.0 UG eth1

网卡 eth0 ip :10.xx.xx.xx

网卡 eth1 ip :192.xx.xx.xx

服务器的默认路由地址是192段的

不想去配路由,因为不会

所以解决办法就是,给Oracle启动两个监听,分别监听服务器的两个IP地址,端口保持不变

修改 listener.ora

[oracle@ut25 admin]$ pwd
/opt/oracle/db01/app/oracle/product/11.2.0/network/admin
[oracle@venn01 admin]$ more listener.ora
# listener.ora Network Configuration File: /opt/oracle/db01/app/oracle/product/11.2./network/admin/listener.ora
# Generated by Oracle configuration tools. SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /opt/oracle/db01/app/oracle/product/11.2.)
(PROGRAM = extproc)
)
) LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.xx.xx.xx)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.xx.xx.xx)(PORT = 1521
))
)
) ADR_BASE_LISTENER = /opt/oracle/db01/app/oracle 重启监听:
[oracle@venn01 ~]$ lsnrctl stop LSNRCTL for Linux: Version 11.2.0.1. - Production on -SEP- :: Copyright (c) , , Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
The command completed successfully [oracle@venn01 admin]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1. - Production on -SEP- :: Copyright (c) , , Oracle. All rights reserved. TNS-: Listener using listener name LISTENER has already been started
[oracle@venn01 admin]$ lsnrctl stop LSNRCTL for Linux: Version 11.2.0.1. - Production on -SEP- :: Copyright (c) , , Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
The command completed successfully
[oracle@venn01 admin]$ lsnrctl start LSNRCTL for Linux: Version 11.2.0.1. - Production on -SEP- :: Copyright (c) , , Oracle. All rights reserved. Starting /opt/oracle/db01/app/oracle/product/11.2./bin/tnslsnr: please wait... TNSLSNR for Linux: Version 11.2.0.1. - Production
System parameter file is /opt/oracle/db01/app/oracle/product/11.2.0/network/admin/listener.ora
Log messages written to /opt/oracle/db01/app/oracle/diag/tnslsnr/venn01/listener/alert/log.xml
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=.xx.xx.xx)(PORT=)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=.xx.xx.xx)(PORT=))) Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC0)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 11.2.0.1. - Production
Start Date -SEP- ::
Uptime days hr. min. sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /opt/oracle/db01/app/oracle/product/11.2./network/admin/listener.ora
Listener Log File /opt/oracle/db01/app/oracle/diag/tnslsnr/venn01/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC0)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.xx.xx.xx)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=172.xx.xx.xx)(PORT=1521
)))
Services Summary...
Service "PLSExtProc" has instance(s).
Instance "PLSExtProc", status UNKNOWN, has handler(s) for this service...
The command completed successfully

可见,Oracle的两个监听分别在两个IP地址:10和192 都起来了

在办公网可以正常访问

在机房内网也可以正常访问了

搞定

Oracle启动两个监听的更多相关文章

  1. oracle启动服务和监听

    1.故障问题:tomcat显示启动oracle数据库失败,数据库服务启动正常 操作1:重启tomcat查看错误信息 2:重启数据库服务 命令: (1) 启动Oracle服务 C:\Users\Admi ...

  2. 【ERROR】Oracle11g两个监听同名进程的故障

    问题: 一个实例启动了另个两个监听. 解决方法: #ps -ef | grep tnslsnr #oracle 925826 1 0 Apr 06 - 234:50 /u01/app/oracle/p ...

  3. 关于Oracle报“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误

    关于Oracle报“ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务”错误原因:listener.ora中没有指定监听服务器名. 如下是解决思路: 尝试1.通过重启服务的方式启动数 ...

  4. 新建Oracle数据库时,提示使用database control配置数据库时,要求在当前oracle主目录中配置监听程序

    新建一个oracle数据库时,当提示使用database control配置数据库时,要求在当前oracle主目录中配置监听程序等字样的时候,问题是那个监听的服务没有启动,解决方法如下: 打开cmd命 ...

  5. 解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题

    解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题通过在CMD下用lsnrctl status 查看出的问题:发现BLOCKEDORACLE启动步骤:s ...

  6. 重启eclips后启动项目出现监听文件找不到

    重启eclips后启动项目出现监听文件找不到 问题: 重启eclips后启动项目出现Error configuring application listener of class com.thinkg ...

  7. oracle server配置:监听程序未启动或数据库服务未注册到该监听程序

    第一次安装oracle时,时完全没有任何问题的, 但是当我去配置oracle_home时,误按之下进入了Database Configuration Assistant, 然后配置已有的一个数据库,就 ...

  8. oracle登陆,在监听服务启动了的情况下,登陆用户还是报错未启动监听服务的错误(刚开始装oracle是能登陆的,重启之后装了plsql)

    刚开始装oracle是能登陆的,重启之后装了140M的plsql,所以有可能是plsql跟oracle监听冲突了,所以我之后换了33M的plsql,oracle就没问题了,可以正常登陆了

  9. oracle 计算机改名后监听无法启动

    oracle改计算机名后,简单办法是利用oracle自带监听配置重新配置一下,或者修改host.listner.ora.tnsname.ora.我改了没起作用,原来是因为加入了域,计算机名字要全名的.

随机推荐

  1. 转)服务器安装部署ESXI6.0

    1.制作一个ESXI6.0的系统安装盘 2.服务器启动后加载VMware ESXi 6.0的ISO文件,开始安装. 3.ESXi引导装入程序,VMware ESXi引导过程,在屏幕上方显示的版本号.内 ...

  2. scrapy的调试和环境安装技巧

    1,先在settings中把ROBOTSTXT_OBEY = False 在主目录下面新建main文件 __autor__ = 'zhouli' __date__ = '2018/11/3 22:39 ...

  3. idea不识别yml配置文件,怎么办?

      问题描述: 如下图,新建的springboot项目,添加了自定义的配置文件后,2.yml无法像上方文件的一样,被识别成配置文件! 虽然可能不会影响项目(不确定),但问题不解决,根本没有心情开始下一 ...

  4. day 14 项目目录规范; time ; logging

    import   sys print(sys.modules) 程序一运行,解释器将里面的所有内容全部加载到内存 项目目录规范: 代码不可能全部只写在一个文件,十几万行代码,调整,修改都很不方便. 所 ...

  5. 畅谈Redis和Memcached的区别

    简述 memcached 和 redis 都很类似:都是内存型数据库,数据保存在内存中,通过tcp直接存取,优势是速度快,并发高,缺点是数据类型有限,查询功能不强,一般用作缓存. 那么题主说 memc ...

  6. Linux系统声卡问题

    问题:Linux系统中有声卡设备,但是听不到声音 一.声卡驱动没有安装 1.通过插拔声卡查出声卡驱动 2.在相应的kernel中编译内核 修改保存.config文件,然后进行编译 make -j ma ...

  7. Js或 Activex 控件调用打印预览等操作

    <input value="打印" type="button" onclick="javascript:window.print()" ...

  8. 两个App之间的跳转 并传值

    两个App之间的传值最主要的是方法是 Intent intent = getPackageManager().getLaunchIntentForPackage("com.example.a ...

  9. JFinal Web开发学习(二)目录、架构、package设计

    package分类 config是JFinal的项目配置 controller是控制器 handler可以设置全局处理器,例如判断用户请求中是否直接请求 FreeMarker的模板文件ftl或者htm ...

  10. pop_heap(_RAIter,_RAIter,_Compare)

    make_heap()是生成一个堆,大顶堆或小顶堆 make_heap(_RAIter,_RAIter) 默认生成大顶堆 make_heap(_RAIter,_RAIter,_Compare) _Co ...