精华内容
下载资源
问答
  • 配置ORACLE的listener.ora、tnsnames.ora
  • listener.ora文件#这是一个名为 LISTENER1 的监听器#监听的协议是TCP协议#监听的主机IP是127.0.0.1#监听的端口是1521端口LISTENER1 =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))#...

    listener.ora文件

    #这是一个名为 LISTENER1 的监听器

    #监听的协议是TCP协议

    #监听的主机IP是127.0.0.1

    #监听的端口是1521端口

    LISTENER1 =

    (DESCRIPTION =

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

    )

    #记录了监听器LISTENER1服务的全局数据库名、数据库路径和数据库实例名

    SID_LIST_LISTENER1 =

    (SID_LIST =

    (SID_DESC =

    (GLOBAL_DBNAME = ORCL)

    (ORACLE_HOME = C:\Oracle11g\product\11.2.0\dbhome_1)

    (SID_NAME = ORCL)

    )

    )

    sqlnet.ora文件

    SQLNET.AUTHENTICATION_SERVICES= (NTS)

    NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)

    这个sqlnet.ora文件实际上就是一个配置文件,主要是和接下来说的tnsnames.ora配合使用。关于sqlnet.ora的具体作用,请参见这篇《Oracle身份认证方式(sqlnet.ora配置)》。

    tnsnames.ora文件

    #ORCL是个别名

    #这条信息记录了我们使用TCP协议,去连接IP地址为127.0.0.1,端口号为1521的数据库主机上服务名为orcl的数据库

    ORCL =

    (DESCRIPTION =

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

    (CONNECT_DATA =

    (SERVER = DEDICATED)

    (SERVICE_NAME = orcl)

    )

    )

    以后,我们还会配置更多的数据库连接信息,比如我要连接192.168.10.2主机上的数据库,我们只需要在tnsnames.ora中继续追加新的连接信息即可,比如:

    STDB =

    (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.10.2)(PORT = 1521))

    (CONNECT_DATA =

    (SERVER = DEDICATED)

    (SERVICE_NAME = stdb)

    )

    )

    常用命令

    #启动监听器

    lsnrctl start

    // 启动名为LISTENER的监听器

    lsnrctl start LISTENER

    #关闭监听器

    lsnrctl stop

    // 关闭名为LISTENER的监听器

    lsnrctl stop LISTENER

    #查看监听器的状态

    lsnrctl status

    // 查看名为LISTENER的监听器的运行状态

    lsnrctl status LISTENER

    #使用tnsping命令

    tnsping

    // 判断是否连通db_alias别名对应服务器上的数据库

    tnsping db_alias

    展开全文
  • 在oracle安装目录$HOME/network/admin下,,经常看到sqlnet.ora tnsnames.ora listener.ora这三个文件,除了tnsnames.ora,其他两个文件详细的用途很多人都不太了解。 sqlnet.ora 用在oracle client端,用于配置连接...

    一、sqlnet.ora

    sqlnet.ora 用在oracle client端,用于配置连接服务端oracle的相关参数。
    1).NAMES.DEFAULT_DOMAIN:域名domain定义,在你用sqlplus访问数据库的时候,会在tns别名后面加上".domain"

    示例:.NAMES.DEFAULT_DOMAIN=.com

    在客户端执行命令:sqlplus username/password@local_dev的时候,会出现如下错误信息:

    "ORA-12154: TNS: 无法处理服务名"或者"ORA-12154: TNS:could not resolve service name"这样的错误信息。
    因为sqlplus username/password@orcl的时候,将tns别名“orcl”转换成了“orcl.com”,所以orcl.com在tnsnames.ora中找不到,就报错了。

    修改tnsnames.ora中的定义如下:
    ORCL.com =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.147)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = orcl)
        )
      )
    再执行sqlplus username/password@orcl连接成功。

    2)NAMES.DIRECTORY_PATH:定义了在客户端连接数据库时,采用什么样的匹配方式。

    示例:NAMES.DIRECTORY_PATH= (TNSNAMES, ONAMES, HOSTNAME)

    那么在客户端执行sqlplus username/password@local_dev连接数据库的时,首先采用tnsnames.ora的别名配置连接数据库;如果连接上;再采用ONAMES进行解析,最后采用主机名进行解析。
    ONAMES表示Oracle使用自己的名称服务器(Oracle Name Server)来解析,目前Oracle建议使用轻量目录访问协议LDAP来取代ONAMES;HOSTNAME表示使用host文件,DNS,NIS等来解析;

    3)SQLNET.AUTHENTICATION_SERVICES:定义登录数据库的认证方式,这个参数默认没有设置。
    示例:SQLNET.AUTHENTICATION_SERVICES=(NONE,NTS)

    NONE表示Oracle数据库身份验证,NTS表示操作系统身份验证,两种方式可以并用,先后顺序表明验证的优先方式。

    4)tcp.validnode_checking=yes:表示启用客户端的IP检查,非法的IP将被拒绝访问Oracle。

    5)tcp.invited_nodes=(IP1,IP2,IP3...):表示允许哪些IP访问Oracle。

    6)tcp.excluded_nodes=(IP1,IP2,IP3...):表示拒绝哪些IP访问Oracle。

    二、tnsnames.ora

    tnsnames.ora 用在oracle client端,用户配置连接数据库的别名参数,就像系统中的hosts文件一样。提供了客户端连接某个数据库的详细信息,主机地址,端口,数据库实例名等。
    示例:
    ORCL =
      (DESCRIPTION =
        (ADDRESS_LIST =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.147)(PORT = 1521))
        )
        (CONNECT_DATA =
          (SERVICE_NAME = orcl)
        )
      )
    PROTOCOL参数一般是TCP,可以根据服务器情况选择一种配置方式。

    HOST 一般是ip地址,如果是主机名,则应该在客户端系统的host文件上配好主机名和ip地址的映射关系。

    PORT 标准是1521,根据服务器端的监听端口而定。

    SERVICE_NAME 就是数据库的服务名。

    三、listener.ora

    tnslsnr进程是监听、并接受远程连接数据库请求的监听进程。listener.ora是tnslsnr进程的配置文件,监听的参数都是从该配置文件中读取,该文件位于服务端。如果你只需要在本地连接数据库,不接受远程连接,那么也不需要启动tnslsnr进程,也不需要去维护listener.ora文件。
    启动监听进程的命令,在命令模式下,执行lsnrctl start命令就启动了监听进程tnslsnr。

    示例:
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = PLSExtProc)
          (ORACLE_HOME = /oracle/product/10.2.0/db_1)
          (PROGRAM = extproc)
        )
        (SID_DESC =
          (GLOBAL_DBNAME = orcl)
          (ORACLE_HOME = /oracle/product/10.2.0/db_1)
          (SID_NAME = orcl)
        )
        (SID_DESC =
          (ORACLE_HOME = /oracle/product/10.2.0/db_1/)
          (SID_NAME = eas)
        )
        
      )

    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.147)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))
        )
      )

    LISTENER部分包含协议地址列表,每个实例一个入口。

    SID_LIST_LISTENER部分标识全局数据库名称、标识监听程序正在服务的每个实例的Oracle软件主目录以及实例或SID。

    当你执行命令sqlplus username/password@tnsname时,一般处理过程如下:
    1) 查询sqlnet.ora看看名称的解析方式,由参数NAMES.DIRECTORY_PATH控制,常用参数值TNSNAME和hostname,不指定参数则默认使用TNSNAME。
    2) 如果使用TNSNAME,则查询tnsnames.ora文件,从里边找tnsname的记录,并且找到主机名,端口和service_name。
    3) 如果listener进程没有问题的话,建立与listener进程的连接。
    4) 根据不同的服务器模式如专用服务器模式或者共享服务器模式,listener采取接下去的动作。默认是专用服务器模式,没有问题的话客户端就连接上了数据库的server process。
    5) 这时候网络连接已经建立,listener进程的历史使命也就完成了。

    几种连接数据库用到的命令形式:
    1)sqlplus "/ as sysdba" 这是典型的操作系统认证,不需要listener进程,数据库即使不可用也可以登录。
    2)sqlplus username/password 不需要listener进程,登录本机数据库,数据库实例启动即可。
    3)sqlplus username/password@tnsname需要listener进程,最常见的远程登录模式,需要启动数据库实例和listener进程。

     

    注:如果本地连接数据库,服务器进程显示如下:

           oracle    2878  2814  0 09:46 ?        00:00:00   oracleorcl (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

           如果通过监听连接数据库,服务器进程显示如下:

           oracle    3124     1    0 09:48 ?         00:00:00 oracleorcl (LOCAL=NO)

     

    展开全文
  • # listener.ora Network Configuration File: C:\app\orcl\product\12.1.0\dbhome_1\network\admin\listener.ora# Generated by Oracle configuration tools.#下面定义监听器(LISTENER)进程为哪个实例提供服务SID_...

    # listener.ora Network Configuration File: C:\app\orcl\product\12.1.0\dbhome_1\network\admin\listener.ora

    # Generated by Oracle configuration tools.

    #下面定义监听器(LISTENER)进程为哪个实例提供服务

    SID_LIST_LISTENER =

    (SID_LIST =

    #实例描述条目1:

    (SID_DESC =

    (SID_NAME = CLRExtProc)

    (ORACLE_HOME = C:\app\orcl\product\12.1.0\dbhome_1)

    (PROGRAM = extproc)

    (ENVS = "EXTPROC_DLLS=ONLY:C:\app\orcl\product\12.1.0\dbhome_1\bin\oraclr12.dll")

    )

    #实例描述条目2:

    #该实例为手工创建,请注意

    (SID_DESC =

    #GLOBAL_DBNAME指创建数据库时使用的全局名称

    (GLOBAL_DBNAME = lentim_me)

    (ORACLE_HOME = C:\app\orcl\product\12.1.0\dbhome_1)

    #SID_NAME指数据库的SID名称

    (SID_NAME = me)

    )

    )

    #数据库可以有多个监听器。下面是一个监听器的详细介绍。

    #监听器的名称为“LISTENER”,通过 “LISTENER =”来指定。

    #再下面就是指定监听器(“LISTENER”)所监听的位置(位置可以不止一个,由‘ADDRESS=’来指定)。

    #位置'ADDRESS'我们可以通过设定监听的协议,ip,端口等信息来指明。

    #如下面的位置信息就有两个,分别对应TCP和IPC协议。

    LISTENER =

    (DESCRIPTION_LIST =

    (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = WIN-0J88SVI13UF)(PORT = 1521))

    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))

    )

    )

    #ADR_BASE_LISTENER用来指定监听的log和trace放在哪里

    ADR_BASE_LISTENER = C:\app\orcl\product\12.1.0\dbhome_1\log

    展开全文
  • # listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_...

    以下是Windows上面Oracle 11G的一个监听配置文件

    # listener.ora Network Configuration File: C:\app\Administrator\product\11.2.0\dbhome_1\network\admin\listener.ora
    # Generated by Oracle configuration tools.
    
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = CLRExtProc)
          (ORACLE_HOME = C:\app\Administrator\product\11.2.0\dbhome_1)
          (PROGRAM = extproc)
          (ENVS = "EXTPROC_DLLS=ONLY:C:\app\Administrator\product\11.2.0\dbhome_1\bin\oraclr11.dll")
        )
      )
    
    LISTENER =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
          (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.102.22)(PORT = 1521))
        )
      )
    
    
    
    ADR_BASE_LISTENER = C:\app\Administrator
    

    #------------------------------------------------------------------------------------------------------
    LISTENER :监听名称,可以配置多个监听,多个监听的端口号要区分开来。
    GLOBAL_DBNAME :全局数据库名。通过select * from global_name; 查询得出
    SID_NAME :服务器端(本机)的SID
    ORACLE_HOME :oracle软件的根目录
    PROTOCOL:监听协议,一般都使用TCP
    HOST:本机IP地址,双机时候使用浮动IP
    PORT:监听的端口号,使用netstat –an 检查该端口不被占用。

    LISTENER :指出一个监听器定义的起始点。它实际上是正被定义的当前监听器的名称。默认的名称是LISTENER。
    DESCRIPTION :描述每个监听位置
    ADDRESS_LIST :含有与监听器正在监听的那些位置有关的地址信息
    PROTOCOL : 指定用于本监听位置的协议
    HOST :保存监听器所驻留在的那台计算机的名称
    PORT :含有监听器正在上面监听的地址
    SID_LIST_LISTENER :定义配置监听器所针对的ORACLE服务的列表
    SID_DESC :描述每个Oracel SID
    GLOBAL_DBNAME :标识全局数据库名称。本项应该与当前Oracle服务的init.ora文件中的SERVICE_NAMES项一致
    ORACLE_HOME : 给出服务器上Oracle可执行程序的位置

    SID_LIST_LISTENER:配置监听器所应对ORACLE服务的列表

    SID_DESC:描述每个Oracle SID

    ORACLE_HOME:给出服务器上Oracle可执行程序的位置

    SID_NAME:含有用于本Oracle实例的Oracle SID的名称

    LISTENER:它实际是当前监听器名称(默认名称),监听器定义的起始点。

    DESCRIPTION:描述每个监听位置

    ADDRESS:含有与监听器正在监听的那些位置有关的地址信息

    PROTOCOL:指定用于本监听位置的协议

    HOST:监听器所驻留的计算机名称

    PORT:监听的端口号

    展开全文
  • oracle listener.ora文件配置

    千次阅读 2019-01-09 09:22:00
    # listener.ora Network Configuration File: /oracleDB/product/11.2.0/db_1/network/admin/listener.ora # Generated by Oracle configuration tools. SID_LIST_LISTENER = (SID_LIST = (SID_DESC...
  • 一个listener.ora配置细节的问题

    万次阅读 2016-04-24 00:49:06
    配置listener.ora静态监听。2. 使用静态监听创建EM。3. 使用sqlplus system/oracle@XXX或EZCONNECT方式,也提示错误:4. 使用sqlplus / as sysdba可以正常登录。问题排查:1. 看报错,ORA-01034错误,给出了几种
  • 1.解决问题:TNS或者数据库不能登录。   ...2.然而,仍有疑问:如何指定'listener.ora'存放的目录?不要默认目录($ORACLE_HOME/network/admin)  在 '.profile' 中加入 [c-sharp] view pla...
  • 3. listener.ora------listener监听器进程的配置文件   关于listener进程就不多说了,接受远程对数据库的接入申请并转交给oracle的服务器进程。所以如果不是使用的远程的连接,listener进程就不是必需的,同样的...
  • node1-> cat /u01/app/oracle/product/11.2.0/db_1/network/admin/listener.ora  SID_LIST_LISTENER=(SID_LIST=(SID_DESC=(GLOBAL_DBNAME=DEVDB)(ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1/)(SI
  • Oracle listener.ora配置

    千次阅读 2012-12-18 14:32:28
    listener.ora存放位置一般在:$ORACLE_HOME/network/admin目录下 一.文件组成部分 listener的名称 listener接受连接的协议地址 数据库服务名 Oracle8之后的版本有动态监听注册,可以不需要配置静态监听。...
  • listener.ora、sqlnet.ora、tnsnames.ora,都是放在$Oracle_home\network\admin目录下。 重点:三个文件的作用和使用 1、sqlnet.ora-----作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来...
  • 那么在客户端执行sqlplus username/password@local_dev连接数据库的时,首先采用tnsnames.ora的别名配置连接数据库;如果连接上;再采用ONAMES进行解析,最后采用主机名进行解析。 ONAMES表示Oracle使用自己的名称...
  • listener.ora、 tnsnames.ora和sqlnet.ora这3个文件是关系oracle网络配置的3个主要文件,其中listener.ora是和数据库服务器端 相关,而tnsnames.ora和sqlnet.ora这2个文件不仅仅关系到服务器端,主要的还是和客户端...
  • sqlnet.ora文件配置详解

    千次阅读 2021-05-03 08:28:21
    一、于sqlnet.ora的说明:*****************************************************FROM ORACLE11G DOCS*************************************The sqlnet.ora file is the profile configuration file. It resides ...
  • Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的。在Oracle中 tns进程用于为指定网络地址上的一个或多个Oracle 实例提供服务注册,并响应来自客户端对该服务提出的连接请求。一旦连接请求...
  • tnsnames.ora配置注意事项tnsnames.ora语法信息,一般会在sample目录下是有= [ (DESCRIPTION_LIST = # Optional depending on whether u have# one or more descriptions# If there is just one description, ...
  • 三个配置文件 listener.ora、sqlnet.ora、tnsnames.ora ,都是放在$ORACLE_HOME\network\admin目录下。 1. sqlnet.ora-----作用类似于linux或者其他unix的nsswitch.conf文件,通过这个文件来决定怎么样找一个...
  • 本人本来想用oracle连接远程数据库,从网上查找相关资料后,使用了oracle自带的net manager...“ora-12541:无监听程序”,“ora-12514:无法识别”,“ora-00119:无效的描述...”......绞尽脑汁,疯狂找寻资料之后,终于
  • oracle 监听详解listener.ora)

    千次阅读 2013-06-02 13:43:13
    对于静态监听在启动监听的时候会注册已经在listener.ora配置的服务,而对于动态监听会自动注册service_names参数定义的服务名称,时间间隔是1分钟。 客户端配置文件包括tnsnames.ora和sqlnet.net,服务器端配置文件...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,609
精华内容 643
关键字:

listener.ora配置详解