热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

监听器listener.ora中HOST参数配置

OracleNet是我们使用Oracle过程中不可缺少的组件环节。对于初学者而言,三个配置文件tnsname.ora、listener.ora和sqlnet.ora是最

Oracle Net是我们使用Oracle过程中不可缺少的组件环节。对于初学者而言,三个配置文件tnsname.ora、listener.ora和sqlnet.ora是最

Oracle Net是我们使用Oracle过程中不可缺少的组件环节。对于初学者而言,三个配置文件tnsname.ora、listener.ora和sqlnet.ora是最容易混乱的部分。而且,由于采用ASCII文本格式编辑,非常容易出现配置错误。

监听器控制文件listener.ora是Oracle服务器端管理重要组件文件。监听器监听端口、动静态注册等行为,与这个文件配置内容有千丝万缕的关系。其中的配置参数,如HOST、Port等,也是非容易混淆的内容。

本篇通过一系列的实验,来介绍HOST参数的使用配置方法,以及Oracle Net在处理Host时采用的算法模式。

相关阅读:

Oracle 双监听器的配置

Oracle监听器出现的6种连接问题及其解决方法

Oracle 11g2的监听器配置

Oracle数据库的监听器挂起情况

监听器注册与ORA-12514 错误分析

1、Host解析

我们在Listener.ora和Tnsname.ora中,都可以遇到Host参数。直观的看,这个参数作用就是指定连接的主机地址。在服务端,监听器listener.ora中的Host就是指定了监听器在哪些地址上进行监听动作。

监听器运行守候三个关键要素:伺候IP地址(一台主机可能有多个网卡、进而有多个IP地址)、连接协议(默认为TCP,但是很多时候处于安全考量会使用其他协议)、端口对象(在哪个端口进行连接等待)。

对Host参数而言,我们可以在服务端listener.ora文件中选择IP地址和主机服务器名称。两种方法下,Oracle监听器是采用不同的策略方法的。

2、环境准备

准备一个多IP网卡的主机环境。实验机器上安装两个网卡对象,配置不同的IP地址。

[root@SimpleLinux network-scripts]# ifconfig

eth0 Link encap:Ethernet HWaddr 08:00:27:C2:AB:D2

inet addr:192.168.0.100 Bcast:192.168.0.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fec2:abd2/64 Scope:Link

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

eth1 Link encap:Ethernet HWaddr 08:00:27:61:80:AF

inet addr:192.168.0.101 Bcast:192.168.0.255 Mask:255.255.255.0

inet6 addr: fe80::a00:27ff:fe61:80af/64 Scope:Link

两个IP地址被绑定在一台主机上,分别为192.168.0.100和192.168.0.101。如果使用名称解析,还要讲IP地址和服务器名称绑定在DNS或者本地/etc/hosts文件中。

[root@SimpleLinux network-scripts]# cat /etc/hosts

# Do not remove the following line, or various programs

# that require network functionality will fail.

127.0.0.1 SimpleLinux.localdomain SimpleLinux localhost.localdomain localhost

::1 localhost6.localdomain6 localhost6

192.168.0.100 SimpleLinux SimpleLinux.localdomain

192.168.0.101 SimpleLinux SimpleLinux.localdomain

3、Host连接绑定主机名

如果HOST参数使用主机名,在进行连接监听的时候,Oracle会检索这个主机上所有的网络名称映射,将监听动作绑定在所有的IP地址上。落实到我们这个案例,就意味着对两个IP地址都存在监听行为。

oracle@SimpleLinux admin]$ ls -l

total 16

-rw-r--r-- 1 oracle oinstall 357 Sep 9 08:49 listener.ora

drwxr-xr-x 2 oracle oinstall 4096 Sep 9 08:39 samples

-rw-r--r-- 1 oracle oinstall 205 May 11 2011 shrept.lst

-rw-r----- 1 oracle oinstall 322 Sep 9 09:01 tnsnames.ora

[oracle@SimpleLinux admin]$ cat listener.ora

# listener.ora Network Configuration File: /u01/app/oracle/network/admin/listener.ora

# Generated by Oracle configuration tools.

LISTENER =

(DESCRIPTION_LIST =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = SimpleLinux.localdomain)(PORT = 1521))

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

)

)

ADR_BASE_LISTENER = /u01/app

注意:当前使用的就是主机名称。启动监听器进行监听动作。

[oracle@SimpleLinux admin]$ lsnrctl status

LSNRCTL for Linux: Version 11.2.0.3.0 - Production on 02-JAN-2014 15:00:17

Listener Parameter File /u01/app/oracle/network/admin/listener.ora

Listener Log File /u01/app/diag/tnslsnr/SimpleLinux/listener/alert/log.xml

Listening Endpoints Summary...

(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=SimpleLinux.localdomain)(PORT=1521)))

(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))

从远程服务器进行连接测试。

D:\>tnsping ora11g

TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 02-1月 -

2014 15:00:51

Copyright (c) 1997, 2010, Oracle. All rights reserved.

已使用的参数文件:

D:\app\Administrator\product\11.2.0\client_1\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名

尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.100)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = ora11g)))

OK (210 毫秒)

D:\>tnsping ora11g_101

TNS Ping Utility for 32-bit Windows: Version 11.2.0.1.0 - Production on 02-1月 -

2014 15:02:21

Copyright (c) 1997, 2010, Oracle. All rights reserved.

已使用的参数文件:

D:\app\Administrator\product\11.2.0\client_1\network\admin\sqlnet.ora

已使用 TNSNAMES 适配器来解析别名

尝试连接 (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.101)(PORT = 1521))) (CONNECT_DATA = (SERVICE_NAME = ora11g)))

OK (10 毫秒)

使用sqlplus连接成功。

SQL> conn scott/tiger@ora11g

已连接。

SQL> conn scott/tiger@ora11g_101

已连接。

说明:当我们使用HOST主机名的时候,,Oracle监听器会对该计算机上所有的IP地址开启监听动作。

更多详情见请继续阅读下一页的精彩内容:


推荐阅读
  • Java EE 平台集成了多种服务、API 和协议,旨在支持基于 Web 的多层应用程序开发。本文将详细介绍 Java EE 中的 13 种关键技术规范,帮助开发者更好地理解和应用这些技术。 ... [详细]
  • 面试题总结_2019年全网最热门的123个Java并发面试题总结
    面试题总结_2019年全网最热门的123个Java并发面试题总结 ... [详细]
  • 本文整理了一份基础的嵌入式Linux工程师笔试题,涵盖填空题、编程题和简答题,旨在帮助考生更好地准备考试。 ... [详细]
  • 本文详细介绍了 Java 网站开发的相关资源和步骤,包括常用网站、开发环境和框架选择。 ... [详细]
  • 本文探讨了SSD购买后是否需要进行4K对齐的问题,并详细解释了4K对齐的原理及其重要性。通过对比机械硬盘与固态硬盘的结构,文章深入分析了4K对齐对SSD性能的影响,并提供了具体的对齐方法。 ... [详细]
  • 本文将详细探讨PHP中C的作用,并对比其他编程语言如Java和C的特点及其适用场景。 ... [详细]
  • 近年来,区块链技术备受关注,其中比特币(Bitcoin)功不可没。尽管数字货币的概念早在上个世纪就被提出,但直到比特币的诞生,这一概念才真正落地生根。本文将详细探讨比特币、以太坊和超级账本(Hyperledger)的核心技术和应用场景。 ... [详细]
  • 本文详细介绍了如何在Windows操作系统中通过Samba服务访问Red Hat Linux中的资源,包括配置Samba服务器、设置工作组名称、添加用户和共享目录等步骤。 ... [详细]
  • Java作为全球最流行的编程语言之一,应用广泛。本文将详细介绍Java开发的相关岗位及其具体职责,帮助读者更好地了解这一领域的职业发展路径。 ... [详细]
  • Java毕业设计项目:“传情旧物”网站(含源码与数据库)
    本项目介绍了如何配置和运行“传情旧物”网站,包括所需的技术栈、环境配置以及具体的操作步骤。 ... [详细]
  • 本文为初学者提供了一条清晰的学习路线,帮助他们逐步成长为优秀的Web开发人员。通过十个关键步骤,涵盖从基础到高级的各个方面,确保每位学习者都能找到适合自己的学习方向。 ... [详细]
  • vsftpd配置(虚拟用户、匿名用户登录)
    一、ftp服务搭建(一)概述1.ftp连接及传输模式(1)控制连接TCP21,用于发送FTP命令信息 ... [详细]
  • 本文介绍了如何使用Postman构建和发送HTTP请求,包括四个主要部分:方法(Method)、URL、头部(Headers)和主体(Body)。特别强调了Body部分的重要性,并详细说明了不同类型的请求体。 ... [详细]
  • Linux 防火墙与端口管理必备命令
    在使用 Linux 系统进行服务部署和问题排查时,防火墙和端口管理是不可或缺的操作。本文将详细介绍如何查看防火墙状态、端口占用情况,以及如何开放和关闭端口,帮助初学者更好地掌握这些技能。 ... [详细]
  • 本文详细介绍如何在忘记MySQL服务器密码的情况下进行密码重置,包括具体的步骤和注意事项。 ... [详细]
author-avatar
狗狗狗699_250
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有