oracle net manager 概览

* 要是读起来,实在感觉难以读得下去,请记住直接从 “6” 开始读。建议还是从 “1” 读起最好。

wKiom1Yc2W2j09XRAAA96PRMeqg671.jpg

蓝色加粗:会在后续解释的概念   

红色加粗:需要引起注意的概念   



1 Oracle Net Services 概述

    Oracle Net Services 提供分布式异构计算环境中的企业级连接解决方案。Oracle Net Services 可简化网络配置和管理,最大限度地提高性能并提高网络的诊断能力。


    Oracle Net 是 Oracle Net Services 的组件之一,它支持客户机应用程序到 Oracle 数据库服务器的网络会话。一旦建立了网络会话,Oracle Net 将充当客户机应用程序和数据库服务器间的数据传递工具。它负责建立和维护客户机应用程序与数据库服务器之间的连接及交换信息。Oracle Net 能够执行这些任务是因为它位于网络中的每个计算机上。


    网络会话是在监听程序的帮助下建立的。监听程序是 驻留在数据库服务器上的单独进程 。监听程序接收传入的客户机连接请求并管理这些请求向服务器的传送。


    监听程序作为客户机请求的中介,将请求传送给服务器。每次客户机请求与服务器进行网络会话,监听程序就接收到实际请求。如果客户机的信息与监听程序的信息相匹配,监听程序就授权连接服务器。



 监听程序:

    驻留在服务器上的进程,用于监听传入的客户机连接请求和管理传输到服务器的通信量。 每次客户机请求与服务器建立网络会话时,监听程序接收实际的请求。如果客户机信息与监听程序信息匹配,则监听程序将允许其连接到服务器。


2 Oracle Net 连接概述

    Oracle Net 允许对各种服务的连接,如 Oracle 数据库、非 Oracle 数据库、网关和外部过程


    用户通过传递用户名和口令以及他们希望连接的服务的标识符来发出连接请求。

    称为连接标识符的标识符可标识:

    ● 目标服务

    ● 路径或网络路由,跨网络而连接某个服务


    可以用几个不同的方法指定连接标识符。最常用的方法之一是通过使用网络服务名 (服务的另一个名称,它映射到连接描述符)。连接描述符包含目标服务和网络路由信息。对于 Oracle9i 或 Oracle8i 数据库,所需服务由其服务名标识;对于 Oracle8 或 Oracle7 数据库,则由其 Oracle 系统标识符 (SID) 标识。网络路由至少通过使用网络地址来提供监听程序的位置。


    以下显示的是映射到连接描述符且名为 sales 的网络服务名:

    sales=                                                                        

    (DESCRIPTION=  (ADDRESS=(PROTOCOL=tcp)(HOST=sales-server1)(PORT=1521))        

                   (CONNECT_DATA=(SERVICE_NAME=sales.us.example.com))             

    )                                                                             

位于 sales1-server 上的监听程序使用 TCP/IP 协议在端口 1521 上监听对名为 sales.us.example.com 的数据库服务发出的连接请求。


    连接标识符及其连接描述符至少存储在一种命名方法中。在连接请求期间,客户机通过命名方法将连接标识符 (上例中的 sales) 解析为连接描述符。接着客户机与连接描述符中指定的监听程序进行联系。

    监听程序将通过协议接收客户机连接。它将客户机信息与通过服务注册从数据库服务接收到的信息以及存储在自己的配置文件 listener.ora 中的信息进行比较。如果信息匹配,则允许连接。



 外部过程:

    一种在 Oracle 服务器上执行的 PL/SQL 过程,它可以调用用 C 语言编写并存储在共享库中的外部过程或函数。为了使 Oracle 数据库连接到外部过程,服务器必须用网络服务名进行配置并且监听程序必须用协议地址和服务信息进行配置。

 连接标识符:

    网络服务名或映射到连接描述符的服务的真实名称。客户机在其连接字符串中使用连接标识符

例如:

    CONNECT username/password@connect_identifier

 网络服务名:

    解析为连接描述符的服务简称。用户通过为要连接到的服务传递包含用户名、口令和网络服务名的连接字符串来启动一个

连接请求:

    CONNECT username/password@net_service_name

 连接描述符:

    网络连接目标的特殊格式的描述。连接描述符包含目标服务和网络路由信息。

    对于 Oracle9i 和 Oracle8i 数据库,目标服务用其服务名标识;对于 Oracle8 或 Oracle7 数据库,则用其 Oracle 系统标识符 (SID) 标识。

 命名方法:

    客户机应用程序使用的一种解析方法,在试图连接到数据库服务时,将某个连接标识符解析为连接描述符。

    Oracle Net 提供以下四种命名方法:

    ● 本地命名

    ● 目录命名

    ● 轻松连接命名 (以前叫做主机命名)

    ● 外部命名

 服务注册:

    实例和调度程序使用监听程序自动注册信息的一种功能。因为此信息是通过监听程序注册的,所以不需使用此静态信息

配置 listener.ora 文件。


    数据库启动期间,服务注册将为监听程序提供下列有关信息:

    ● 每个正在运行的数据库实例的服务名

    ● 数据库实例名

    ● 每个实例可用的服务处理程序 (调度程序和专用服务器)

    ● 调度程序、实例和节点加载信息

    这些信息使监听程序能够适当地指导客户机的请求。


    此加载信息使监听程序能够确定哪个调度程序可以按最佳方式处理客户机的连接请求。如果所有的调度程序都被阻塞,监听程序将为此连接衍生一个专用服务器。


3 用服务名进行数据库标识


    Oracle 数据库是作为服务呈现给客户机的,即数据库代表客户机执行工作。数据库可以有一个或多个与其有关的服务。 到 Oracle8i 为止,Oracle 数据库服务由 Oracle 系统标识符 (SID) 唯一标识。SID 也由数据库内部使用,以作为指向系统全局区 (SGA) 的指针。客户机通过指定连接描述符中的 SID 连接到数据库实例。此命名方案不区分实例的服务。 由于 Oracle 数据库可以分布到多个计算机上,因此在 Oracle9i 和 Oracle8i 中都指定了作为整体的服务和每个实例的服务。


 服务名

    数据库现在由其服务名标识。服务名由初始化参数文件中的 SERVICE_NAMES 参数指定。SERVICE_NAMES 指定可以跨实例和/或节点的最高级别的 Oracle 数据库服务视图的名称。SERVICE_NAMES 默认为全局数据库名,即由数据库名和域名组成的名称。


 实例名

    数据库实例由实例名以及初始化参数文件中的 INSTANCE_NAME 参数标识。INSTANCE_NAME 对应于实例的 SID。


 连接描述符

    用 SERVICE_NAME (没有 S) 参数配置连接描述符,以连接到 Oracle9i 或 Oracle8i 数据库。例如,以下连接描述符包含一个位于 sales1-sun 上的监听程序的地址,此监听程序监听名为 sales.us.example.com 的数据库服务的连接请求:

                                                                              

    sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales-sun1)(PORT=1521)) 

    (CONNECT_DATA= (SERVICE_NAME=sales.us.example.com)))                      

                                                                              

也可以用 INSTANCE_NAME 参数配置连接描述符,以连接到数据库的特定实例。如果您具有带多个实例的 Oracle9i Real Application Clusters,可能需要使用这种方法。 例如,以下连接描述符包含一个位于 sales-sun1 上的监听程序的地址,此监听程序监听与 sales.us.example.com 数据库关联的名为 sales1 的实例的连接请求:

                                                                                

    sales= (DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST=sales-sun1)(PORT=1521))   

    (CONNECT_DATA= (SERVICE_NAME=sales.us.example.com) (INSTANCE_NAME=sales1))) 

                                                                                


 Oracle 系统标识符 (SID):

    一个名称,用于标识运行早于 Oracle 8i 的数据库的特定实例。对于任何数据库,都至少有一个引用数据库的实例。

    对于早于 Oracle8i 的数据库,SID 被用来标识数据库。SID 作为连接描述符的一部分包括

在 tnsnames.ora 文件中,并作为监听程序的定义包括在 listener.ora 文件中。应使用 SID 参数配置连接描述符,客户机将使用这些连接描述符连接到 Oracle8 或 Oracle7 数据库。

 实例:

    系统全局区 (SGA) 和 Oracle 后台进程的组合。当数据库在数据库服务器上启动时 (不考虑计算机的类型),Oracle 将分配一个称为 SGA 的内存区域并启动一个或多个 Oracle 进程。实例的内存和进程将有效管理相关数据库的数据并为数据库用户提供服务。您可以在并行服务器数据库内连接到任何实例来访问信息。

 服务名:

    数据库的逻辑表示,它是数据库呈现给客户机的方式。一个数据库可呈现为多个服务,而一个服务可作为多个数据库实例进行实现。服务名是一个字符串,该字符串是全局数据库名,即在安装或数据库创建期间输入的由数据库名称和域名组成的一个名称。如果您不能确定全局数据库名,那么可以从初始化参数文件中的 SERVICE_NAMES 参数的组合值中获得该名称。

    客户机用来连接到 Oracle9i 或 Oracle8i 数据库的连接描述符应该使用 SERVICE_NAME (不带 S) 参数进行配置。

 初始化参数文件:

    一个包含初始化数据库和实例的配置参数的文件。

 全局数据库名:

    数据库的全名,它唯一标识该数据库,以区别于任何其他数据库。全局数据库名的格式为“database_name.database_domain”,例如 sales.us.example.com。


    数据库名称部分 sales 是您希望用来称呼数据库的简单名称。数据库域部分 us.example.com 指定数据库所在的域,使全局数据库名具有唯一性。Oracle 建议在可能时使数据库域镜像网络域。


    全局数据库名是数据库的默认服务名,如同初始化参数文件中的 SERVICE_NAMES 参数所指定的那样。

 实例名:

    Oracle9i 和 Oracle8i 数据库实例由初始化参数文件中的 INSTANCE_NAME 参数标识。INSTANCE_NAME 对应于该实例的 Oracle 系统标识符 (SID)。客户机可以通过指定连接描述符中的 INSTANCE_NAME 参数,连接到特定实例。


4 Oracle Net Services 配置概览

    Oracle Net Manager 让您可以配置网络的多个元素,包括命名方法、客户机和服务器概要文件以及监听程序。

    wKiom1XnyHbSil-IAACLnSqDENw943.jpg


 命名方法

    定义简称来标识服务的位置,如数据库。这些称作连接标识符的简称映射到连接描述符 (它包含服务的网络位置和标识)。

    通过 Oracle Net Manager,可以配置不同的方式以通过命名方法连接标识符解析为连接描述符。


 客户机和服务器概要文件

    通过概要文件配置首选项,该首选项用于在客户机和服务器上启用和配置 Oracle Net 功能。通过配置文件可以设置首选项,从而可以区分命名方法,启用 Oracle Advanced Security 功能,启用事件记录和跟踪或路由连接。


 服务器上的监听程序配置

    配置接收客户机连接的监听程序。监听程序应配置有:

    ● 一个或多个监听协议地址

    ● 有关目的服务的服务信息


    协议地址在监听程序配置文件 listener.ora 中配置。

    服务信息可能在 listener.ora 文件中配置:

    ● Oracle8i 或更高版本的数据库将特定信息自动注册到监听程序,如服务名、实例名、服务处理程序和加载信息。这种称为服务注册的功能不需要在 listener.ora 文件中配置。

    ● 其他服务 (包括 Oracle7 或 Oracle8 数据库) 需要在 listener.ora 文件中配置服务。 


 Oracle Advanced Security:

    一个为 Oracle 环境提供一套综合安全功能的产品。此组安全特性保护企业网络并将公司网络安全扩展到 Internet。它提供将网络加密及认证解决方案、一次登入服务和安全协议集成的单一来源。Oracle Advanced Security 集成了工业标准并使 Oracle 网络及其以外产品具有无可比拟的安全性。

 协议地址:

    协议地址是标识网络对象的网络地址的地址。


    建立连接后,客户机和请求的接收方 (例如监听程序、Oracle Names Server 或 Oracle Connection Manager) 将配有相同的协议地址。客户机使用该地址向特定的网络对象位置发送连接请求,同时接受方在该地址“监听”请求。对于客户机和连接接收方而言,安装相同的协议以及配置相同的地址十分重要。


    协议地址由 ADDRESS 和 ADDRESS_LIST 要素组成。


5 Oracle Net Manager 主要功能

    Oracle Net Manager 是帮助您配置和管理 Oracle 网络环境的一种工具。使用 Oracle Net Manager 可对下列 Oracle Net 特性和组件进行配置和管理:


 服务命名

    可以创建或修改 tnsnames.ora 文件、目录服务器或 Oracle Names Server 中数据库服务的网络说明。称为连接描述符的网络描述被映射到连接标识符 (在数据库连接期间,客户机在它们的连接字符串中使用连接标识符)。


 监听程序

    可以创建或修改监听程序它是 服务器上的接收和响应数据库服务的客户机连接请求的进程


 概要文件

    可以创建或修改概要文件,它是确定客户机如何连接到 Oracle 网络的参数的集合。可以对命名方法事件记录跟踪外部命名参数以及 Oracle Advanced Security 使用客户机参数。


 目录服务器:

    使用轻型目录访问协议 (LDAP) 访问的目录服务器。符合 LDAP 的目录可以对数据库网络组件、用户和公司策略优先选项、用户验证和安全信息提供集中式存储和检索,从而代替客户端和服务器端的本地化文件。


    Oracle Net 支持下列目录服务:

    ● Oracle Internet Directory

    ● Microsoft Active Directory

 连接字符串:

    用户向要连接的服务传递的信息,如用户名、口令和连接标识符。

例如:

    CONNECT username/password@connect_identifier

 事件记录:

    将错误、服务活动和统计信息写入日志文件的一种功能。当屏幕上的错误消息不足以了解故障时,日志文件将为管理员提供额外的信息。日志文件经由错误堆栈显示各层的软件状态。

 跟踪:

    一种将有关某个操作的详细信息写入到输出文件的功能。跟踪功能生成语句的详细序列,这些语句说明操作执行时的操作事件。管理员使用跟踪功能诊断异常情况;通常不启用此功能。与通过事件记录提供的信息相比,跟踪操作可使您获得更多的有关组件内部操作的信息。


    注:跟踪使用大量磁盘空间,可能对性能产生重大影响。因此,只在必要时才启用跟踪。

 外部命名:

    将存储在非 Oracle 命名服务中的服务解析为网络地址的一种命名方法。

外部命名方法包括:

    ● 网络信息服务 (NIS)


6 显示在本地配置文件中配置好的网络元素

    ● tnsnames.ora 文件中的网络服务名

    ● listener.ora 文件中的监听程序

    ● sqlnet.ora 文件中的概要文件


listener.ora 示例内容:

wKioL1XpR5WzZYGAAAFH3xw1ago421.jpg


tnsnames.ora 示例内容:

wKioL1XpR5XireLaAAEJZ6jrIdg703.jpg


sqlnet.ora 示例内容:

wKiom1XpRgvQCGvZAABI0cSxVgA999.jpg


 tnsnames.ora 文件:

    包含映射到连接描述符的网络服务名的配置文件。此文件用于本地命名方法。

    tnsnames.ora 文件必须驻留在以下某一位置:

    ● 由环境变量 TNS_ADMIN 指定的目录。

       如果在 Windows NT 上没有将 TNS_ADMIN 环境变量定义为变量,它可能在注册表中。

    ● 节点的全局配置目录。

       对于 Sun Solaris,此目录为 /var/opt/oracle ;Windows NT 不具有中央目录。

    ● 在 UNIX 上为 $ORACLE_HOME/network/admin ;而在 Windows 操作系统上为 ORACLE_HOME\network\admin 目录。

 网络服务名:

    解析为连接描述符的服务简称。用户通过为要连接到的服务传递包含用户名、口令和网络服务名的连接字符串来启动一个

连接请求: CONNECT username/password@net_service_name


    根据各种需要,网络服务名可以存储在各种地方,包括:

    ● 每个客户机上的本地配置文件 tnsnames.ora 文件

    ● 目录服务器

    ● Oracle Names server

    ● 外部命名服务,包括网络信息服务(NIS)

 listener.ora 文件:

    指定以下各项的监听程序的配置文件:

    ● 监听程序名

    ● 它正在接受连接请求的协议地址

    ● 监听程序正在监听的服务 (数据库或非数据库服务)


    listener.ora 文件必须驻留在以下某一位置:

    ● 由环境变量 TNS_ADMIN 指定的目录。如果在 Windows NT 上没有将 TNS_ADMIN 环境变量定义为变量,它可能在注册表中。

    ● 节点的全局配置目录。对于 Sun Solaris,此目录为 /var/opt/oracle。Windows NT 不具有

       中央目录。

    ● 在 UNIX 上为 $ORACLE_HOME/network/admin,而在 Windows 操作系统上为 ORACLE_HOME\net

       work\admin 目录。

注:Oracle9i 和 Oracle8i 由于服务注册而不需要标识数据库服务。不过,如果您打算使用 Oracle Enterprise Manager 来监视数据库,则需要静态服务配置。

 sqlnet.ora 文件:

    一种用于客户机或服务器的配置文件,该文件指定:

    ● 附加到未限定的服务名或网络服务名的客户机域

    ● 命名方法的次序,在解析名称时客户机需要使用到这些方法。

    ● 要使用的事件记录和跟踪功能

    ● 连接路径

    ● 首选的 Oracle Names Server

    ● 外部命名参数

    ● Oracle Advanced Security 参数


    sqlnet.ora 文件必须驻留在以下某一位置:

    ● 由环境变量 TNS_ADMIN 指定的目录。如果在 Windows NT 上没有将 TNS_ADMIN 环境变量定义

       为变量,它可能在注册表中。

    ● 在 UNIX 上为 $ORACLE_HOME/network/admin,而在 Windows 操作系统上

       为 ORACLE_HOME\network\admin 目录。

 概要文件:

    参数集合,指定客户机或服务器上启用和配置 Oracle Net 功能的首选项。概要文件通过 sqlnet.ora 文件存储和实施。



wKioL1XnuS6A5hFLAABm5lAGjro109.jpg

你可能感兴趣的:(oracle,manager,解决方案,应用程序,最大限度)