`
哇哈哈852
  • 浏览: 94249 次
文章分类
社区版块
存档分类
最新评论

Oracle关于监听器连接方面的总结

阅读更多


Oracle监听器的各种问题总结:

1)系统断电异常重启后导致Oracle的监听无法正常启动,此时可以通过手动修改一下,使用静态注册监听:
如:
# listener.ora Network Configuration File: /var/local/u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/dbhome_2)
      (PROGRAM = extproc)
    )
以下为增加的内容
   (SID_DESC =
      (GOLBAL_DBNAME = orcl)
      (ORACLE_HOME = /home/u01/app/oracle/product/11.2.0/dbhome_2)
      (SID_NAME = orcl)
    )
  )
以上为增加的内容

LISTENER =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
  )

2)ora-3136
修改listener的inbound_connect_timeout参数的方法

方法一:
LSNRCTL> show inbound_connect_timeout

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
LISTENER parameter "inbound_connect_timeout" set to 60
The command completed successfully

LSNRCTL> set inbound_connect_timeout 0
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully

LSNRCTL> show inbound_connect_timeout
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=)(PORT=1521))
LISTENER parameter "inbound_connect_timeout" set to 0
The command completed successfully

LSNRCTL> set save_config_on_stop on   #表示修改参数永久生效,否则只是临时生效,下次重启监听又还原为原来的值了

方法二:
修改listener.ora文件,加入:  INBOUND_CONNECT_TIMEOUT_LISTENER_NAME=0

3)为了数据库的安全,我们不仅可以限制远程登陆操作系统的ip,也可以限制通过监听连接数据库服务器的ip
在sqlnet.ora中增加如下配置 【Linux公社 http://www.linuxidc.com 】
tcp.validnode_checking = yes
tcp.invited_nodes = (192.168.1.102,192.168.1.222,192.168.1.0/24)  #表示只允许192.168.1.102和192.168.1.222以及192.168.1.0、24网段的地址通过监听连接数据库
别的地址连接就会报如下错误
ERROR:
ORA-12537: TNS: 连接关闭

4)禁止通过操作系统认证连接数据库(sqlplus / as sysdba)
在sqlnet.ora中加入如下内容:
SQLNET.AUTHENTICATION_SERVICES=NONE
或者SQLNET.AUTHENTICATION_SERVICES=(NTS)
此时使用sqlplus / as sysdba登录,就会报 ORA-01031: 权限不足错误

5)本人线上安全的监听服务配置文件如下:
--cat sqlnet.ora
# sqlnet.ora Network Configuration File: /home/faxc/app/faxc/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
# Generated by Oracle configuration tools.
SQLNET.INBOUND_CONNECT_TIMEOUT = 0
SQLNET.RECV_TIMEOUT = 30
SQLNET.SEND_TIMEOUT = 30
DIAG_ADR_ENABLED = OFF
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)
tcp.validnode_checking = yes
tcp.invited_nodes = (192.168.1.102,192.168.1.222,192.168.1.0/24)
ADR_BASE = /home/faxc/app/faxc

--cat listener.ora
# listener.ora Network Configuration File: /home/faxc/app/faxc/product/11.2.0/dbhome_1/network/admin/listener.ora
# Generated by Oracle configuration tools.

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /home/faxc/app/faxc/product/11.2.0/dbhome_1)
      (PROGRAM = extproc)
    )
    (SID_DESC =
      (GOLBAL_DBNAME = orcl)
      (ORACLE_HOME = /home/faxc/app/faxc/product/11.2.0/dbhome_1)
      (SID_NAME = orcl)
    )
  )
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.222)(PORT = 1521))
      )
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
      )
    )
  )

ADR_BASE_LISTENER = /home/faxc/app/faxc

--cat tnsnames.ora
ORCL=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.222)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )
200=
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.200)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orcl)
    )
  )

6)如果允许的话,可以通过iptables禁止1521端口对外访问,只需本机通过1521端口访问即可

-A RH-Firewall-1-INPUT -s 127.0.0.1 -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT  #只允许本机通过1521端口访问
-A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT  #允许外网和本机通过1521端口访问。
  • 大小: 50.8 KB
分享到:
评论

相关推荐

    oracle连接数问题

    `LISTENER.ORA`文件控制着数据库监听器的行为,其中的`direct_handoff`参数决定了监听器是否直接将连接请求转发给数据库服务器进程。将其设置为`off`可以减少监听器的资源消耗,从而间接提高连接数上限。 ### ...

    Oracle实现远程连接

    总结起来,Oracle的远程连接涉及多个步骤,包括配置Net Manager中的服务名和监听器,以及调整服务器端的数据库和监听器设置。这个过程要求对Oracle网络架构有深入的理解,但一旦完成,就能为远程用户提供方便的数据...

    Delphi7 ado 连接远程oracle11g

    2. **配置监听器** - 在 Oracle 服务端,需要正确配置 NetManager 监听程序。将原有的计算机名更换为目标主机 IP 地址,以确保远程连接的准确性。 - 修改服务端所在的文件夹下的 `listener.ora` 文件,确保其中的...

    Oracle监听器服务不能启动的问题.docx

    当遇到Oracle监听器服务不能启动的问题时,可以从以下几个方面入手排查: - **监听器配置**:确保监听器配置文件(如`listener.ora`)中的地址和端口设置正确。 - **服务启动路径**:检查服务的启动路径是否正确设置...

    java连接oracle工具类

    总结来说,Java连接Oracle工具类的知识点涉及到了MVC模式的使用、JDBC API的操作、资源管理、异常处理以及SQL语句的执行等多个方面。通过封装SQLHelper工具类,可以简化数据库操作的代码,提高代码的可重用性和可...

    oracle监听无法启动

    根据提供的描述和部分内容,可以总结出导致Oracle监听无法启动的原因主要有以下几个方面: 1. **配置文件错误**:`listener.ora` 配置文件中的设置有误或缺失必要的参数。 2. **网络问题**:服务器的IP地址变更后未...

    oracle非常全和完整的总结文档

    这篇文档是对Oracle知识的全面总结,涵盖了从安装、用户管理到SQL命令的诸多方面。 首先,Oracle在安装过程中会自动生成两个预设的超级用户:SYS和SYSTEM。SYS用户拥有最高的权限,具备sysDBA角色,能够创建新的...

    oracle监听详解

    Oracle监听器(Listener)是Oracle数据库系统中的一个重要组件,它的主要职责是在指定的网络端口监听来自客户端的连接请求,并根据这些请求创建相应的服务器进程。监听器还负责管理与客户端之间的连接,并确保每个...

    Oracle日常维护总结

    - `lsnrctl`命令用于管理监听器,`stop`和`start`分别用于停止和启动监听器。 4. **表空间管理**: - 表空间大小的增加可能是由于回滚段(`UNDOTBS1`)的增长。可以调整回滚段的`optimal`属性以控制其自动收缩。 -...

    oracle解决协议适配器错误

    这些步骤涵盖了从监听器配置到环境变量设置的多个方面,旨在帮助用户全面排查并解决问题。值得注意的是,在进行任何配置更改之前,请务必备份原有配置文件,以防万一出现问题时能够迅速恢复。此外,对于较为复杂的...

    Oracle数据库学习日记-实用性最强的Oracle学习总结.docx

    配置Oracle数据库监听器是确保数据库服务正常运行的重要步骤。监听器(Listener)负责接收客户端的请求并转发到相应的数据库实例。使用Oracle Net Assistant可以方便地配置和管理监听器,包括添加、编辑和删除监听器...

    oracle10g 使用总结,灰常详细

    安装Oracle数据库通常涉及配置监听器、选择安装类型(如企业版、标准版或个人版)、设置数据库标识符(SID)以及配置网络服务名等步骤。安装过程会自动生成两个预定义的用户——`sys`和`system`,其中`sys`具有最高...

    OracleDBA工作经验知识总结.pdf

    根据提供的文件内容,以下是关于Oracle DBA工作的知识总结,主要围绕Oracle数据库安装、用户登录、管理以及常见问题处理等知识点展开: 一、Oracle数据库的安装及用户创建 1. Oracle数据库安装后会自动创建sys和...

    oracle 10G EM 配置总结

    配置Oracle 10G EM DBControl的第一步是确保数据库和监听器已经启动并正常运行。这是因为DBControl需要在数据库中创建一个名为"sysman"的模式,该模式用来存储EM的数据,也就是所谓的EM资料库(repository)。这个...

    oracle 11g Linux64位安装包 百度云盘提取码.txt

    - 安装完成后,需要配置监听器服务和数据库服务,以便其他应用程序能够连接到Oracle数据库。 - 编辑监听器配置文件`listener.ora`,并根据实际情况调整监听地址和端口等信息。 - 创建或编辑tnsnames.ora文件,...

    Oracle经典教程1——走进Oracle

    2. **监听器服务**:监听网络连接请求,转发到相应的数据库实例。 3. **其他辅助服务**:如Oracle的管理工具和服务等。 #### Oracle启动和关闭 启动和关闭Oracle数据库涉及到以下几个关键步骤: 1. **启动**:...

    oracle服务器端与客户端配置.docx

    Oracle监听器,全称为LISTENER,是Oracle数据库系统在服务器端运行的一个网络服务,其主要任务是监听来自客户端的连接请求。当客户端尝试连接到数据库时,监听器会验证这些请求,并在验证成功后建立连接,否则将拒绝...

    ORACLE的工作机制

    本文将深入探讨Oracle数据库的工作机制,包括连接机制、用户请求处理流程以及SQL语句的执行过程等方面。 #### 二、连接机制 Oracle数据库提供了多种连接模式来处理用户进程与数据库之间的通信。主要分为两种模式:...

    Oracle新手DBA入门.pdf

    这些服务包括Oracle VSS Writer Service、Oracle DBConsole、Oracle Job Scheduler、Oracle MTS Recovery Service、***扩展服务的一部分(如OracleOraDb11g_home1ClrAgent),以及Oracle监听器服务(OracleOraDb11g_...

    ORACLE数据库日常工作维护知识总结.pdf

    - **命令**: 使用以下命令检查Oracle监听器的状态: ```bash lsnrctl status ``` - **解释**: 此命令将展示监听器的状态和服务详情,确保监听器正常运行并能够接收客户端请求。 #### 二、检查系统和ORACLE日志...

Global site tag (gtag.js) - Google Analytics