设定Oracle网络环境
设定Oracle网络环境
4.1 目标
通过本节内容,您应该能够:
- 描述Oracle网络设置
- 使用Enterprise Manager网络服务管理页面进行Oracle网络设定
- 使用监听器控制程序
- 设置可访问Oracle数据库的客户端
4.2 网络设置: 简介
客户端/服务器端应用程序连接
Oracle Net是Oracle Net服务的一个组件,常驻于客户端电脑与Oracle数据库服务器中。Oracle Net负责建立和维护客户端应用程序与服务器之间的连接,以及在两者之间以产业标准协议交换信息。
如图所示,Oracle Net支持传统的客户端/服务器应用程序连接。此外,Oracle Net还支持使用Web浏览器的客户端透过应用程序Web服务器来连接。
由客户端Web浏览器到Oracle数据库服务器的Internet连接,和客户端/服务器应用程序相似。客户端的浏览器使用HTTP与网页服务器沟通,以建立连接要求。Web服务器会将要求传送到处理要求的应用程序。这个应用程序则会使用Oracle Net与Oracle Net内设定好的Oracle数据库服务器沟通。
如需更多关于Oracle Net设定的相关信息,请参阅Oracle Net Services Administration Guide。
4.3 设定和管理Oracle网络的工具
- Oracle Enterprise Manager 网络服务管理页
- Oracle Net Manager
- Oracle Net设置助手:由Oracle Universal Installer启动
您可以使用下列工具或应用程序来管理Oracle网络设置:
- Oracle Enterprise Manager: 提供设定和管理Oracle Net服务的整合环境。您可以使用Enterprise Manager跨多个文件系统为Oracle主目录设定Oracle Net服务,也可以使用Oracle Enterprise Manager来管理监听器。Oracle Enterprise Manager现在包含了之前只有Oracle Net Manager才提供的功能。
- Oracle Net Manager: 提供一个图形使用者界面,您可以透过这个界面为本机客户端或服务器主机上的Oracle主目录设定Oracle Net服务。
- Oracle Net设置助手(Oracle Net Configuration Assistant): 在您安装Oracle软件时,Oracle Universal Installer会启动此设置程序。Oracle Net设置助手程序能让您设定Oracle数据库的监听协议、位置与服务信息。
4.4 Enterprise Manager网络服务管理页面
您可以使用Enterprise Manager网络服务管理页面来执行下列工作:
- 设定区域命名(Local naming)与目录命名(Directory naming)
- 搜寻目录命名项目
- 设定和管理监听器
- 排序监听器名称、区域命名项目及目录命名项目
- 将目录命名项目导出到ora文件
“网络服务管理(Net Services Administration)”页面让您可管理监听器、目录命名、区域命名,及变更Oracle主目录的网络设置文件。
4.5 访问网络服务管理页面
您可以用下列方法来访问”网络服务管理”页面:
- 在数据库首页的”一般(General)”区域,按一下”监听器(Listener)”连接。
- 在Listener页面中的”相关链接(Related Links)”区域,按一下”网络服务管理(Net Services Administration)”连接。接着就会出现”网络服务管理”页面。
4.6 Oracle Net监听器的设置与管理
监听器是数据库服务器上执行的独立处理作业,它会接收来自客户端的连接要求,再将这些要求转送到数据库服务器。
监听器是以一或多个监听协议地址,支持服务的相关信息以及控制其执行期间行为的参数来设定。监听器设置存储在一个名为listener.ora的配置文件中。
安装“企业版”或“标准版”的Oracle时,”Oracle Net设置助手”会自动以TCP/IP为监听协议,设定一个名为LISTENER的监听器。在自订安装时,”Oracle Net设置助手”会提示您提供监听器名称与协议地址。而所有的安装都会自动设定一个用来呼叫外部程序的监听内部处理作业通信(listening interprocess communication, IPC)协议位址。
注意:外部程序通常是以第三代程序语言(3GL)编写,例如C,而且是由PL/SQL程序码呼叫。
4.7 使用Enterprise Manager管理Oracle Net监听器
您可以使用Oracle Enterprise Manager或监听器控制公用程序来管理监听器。
如果要使用Oracle Enterprise Manager停止监听器,请执行下列步骤:
- 在数据库首页,按一下 “一般(General)“区域中的”监听器(Listener)”连接。会出现”监听器”首页。
- 按一下”停止(Stop)”来停止监听器。接下来会显示”网络服务管理:主机登陆(Net Services Administration: Host Login)”页面。
- 输入使用者名称及密码。按一下”登陆(Login)”。会显示”启动/停止:监听器(Start/Stop: LISTENER)“页面。
- 按一下”确定(OK)”。会显示”处理:停止监听器(Processing: Stop Listener)”页面。
- 停止监听器之后,会显示”监听器”首页。
如果使用Oracle Enterprise Manager来启动监听器,请执行下列步骤:
- 在数据库首页,请按一下”一般(General)”区域中的”监听器(Listener)”链接。会出现监听器首页。
- 按一下”启动(Start)”来启动监听器。会显示”网络服务管理: 主机登陆(Net Services Administration: Host Login)”页面。
- 请输入使用者名称及密码。按一下”登陆(Login)”。接着会显示”启动/停止:监听器(Start/Stop: LISTENER)”页面。
- 按一下”确定(OK)”。会显示”处理:启动监听器(Processing: Start Listener)”页面。
- 在启动监听器之后,会显示”监听器”首页。
注意:如果没有启动监听器,就不能存取Oracle Enterprise Manager Database Control。在这种情况下,您必须按照本节之后所描述的步骤,以监听器控制公共程序来启动监听器。
4.8 使用监听器控制公用程序
使用下列命令来控制监听器:
- 启动监听器
$ lsnrctl start <listener_name>
- 停止监听器
$ lsnrctl stop <listener_name>
您可能需要使用监听器控制公用程序来启动监听器,例如在重新启动主机时。
启动监听器
您可以使用start命令从监听器控制公用程序来启动监听器。start命令的参数为监听器名称,如果没有指定任何参数,那么会启动名称为LISTENER的预设监听器。请执行下列命令来启动监听器:
$ lsnrctl start <listener_name>
确认监听器的状态
您可以执行下列命令来确认监听器是否已经启动:
$ lsnrctl status <listener_name>
您也可以执行下列命令来列出支持的服务:
$ lsnrctl services <listener_name>
如需更多监听器控制公共程序的相关信息,请参阅Oracle Net Services Administration Guide.
4.9 连接到Oracle数据库
就客户端而言,Oracle数据库是以服务的形式呈现,一个数据库可以有一个或多个相关的服务。数据库是透过服务名来识别,而服务名称是由初始化参数文件中的SERVICE_NAMES参数来指定。服务名称的预设值是全局数据库名,此名称是由数据库名称(DB_NAME参数值)与网域名称(DB_DOMAIN参数值)组成(这里我们使用DBDAO作为服务名)。
如果要连接到数据库服务,客户端必须使用可提供数据库位置与数据库服务名称的连接描述符(Connect descriptor)。客户端可以使用连接描述符或是连接描述符可解析的名称。
下列范例显示的连接描述符,可让客户端连接到名称为inst01.oracle.com的数据库服务。
(DESCRIPTION= (ADDRESS=(PROTOCOL=tcp)(HOST= inst01.oracle.com)(PORT=1521)) (CONNECT_DATA=(SERVICE_NAME=DBDAO)) )
4-10 名称解析
使用者通过传送连接字符串(Connect string), 起始一个传送到Oracle数据库的连接请求。连接字符串中包含使用者名称、密码以及连接ID。连接ID可以是连接ID本身,或是连接描述符可解析的名称。最常见的连接ID即为网络服务名称,也就是一项服务的简单名称。
使用网络服务名时,将网络服务名对应到连接描述符就会开始进行连接处理。这些对应信息可以储存在一个或多个信息存储区域中,并且使用命名方法加以解析。
4-11 Oracle Net命名方法
Oracle Net支持下列方法:
- 区域命名(Local naming): 使用一个区域设定文件
- 目录命名(Directory naming): 使用集中式的LDAP相容目录服务器
- 简易连接命名(Easy connect naming): 使用TCP/IP连接字符串
- 外部命名(External naming): 使用可支持的非Oracle命名服务
区域命名: 区域命名方法会将以本身的网络服务名称来识别的连接ID, 储存在客户端名为tnsnames.ora的区域设置文件上。
目录命名: 目录命名方法会将连接ID储存在集中式LDAP相容的目录服务器,以访问数据库服务。
简易连接命名: 简易连接命名方法能让客户端使用TCP/IP连接字符串连接到Oracle数据库服务器。此连接字符串必须包含主机名称、选择性的连接号以及服务名称,如下所示:
connect username/password@host[:port][/service_name]
简易连接命名方法不需要设置。
外部命名: 外部命名方法会将网络服务命名储存在可支持的非Oracle命名服务中。支持的厂商服务包括:
- 网络信息服务(NIS)外部命名
- 分散式运算环境(DCE)单元目录服务(Cell Direcory Service, CDS)
4-12 使用Enterprise Manager设定区域命名
您可以使用Enterprise Manager,按照下列的区域命名步骤来设定网络服务命名:
- 在数据库首页,按一下”一般(General)”区域的”监听器(Listener)“连接。会出现”监听器”首页。
- 在”相关链接(Related Links)“区域按一下”网络服务管理(Net Services Administration)”。会出现”网络服务管理”页面。
- 为Oracle本地目录选择适当的”设置文件位置(Configuration File Location)”。再从”管理(Administer)”下拉功能表中选择”区域命名(Local Naming)”。再按一下”执行(Go)”。接下来会出现”网络服务管理: 主机登陆(Net Services Administration: Host Login)”页面。
- 输入主机的使用者名称及密码。会出现”区域命名(Local Naming)”页面。
- 按一下”建立(Create)”按钮,或是选择现有的”网络服务名称(Net Service Name)”,再按一下”类似创建(Create Like)”。就会出现”建立一般网络服务名称(Create Net Service Name General)”页面。
- 在”网络服务名称(Net Service Name)“栏位输入名称。
- 在”数据库信息(Database Infomation)”区域中按照下列步骤来设定服务支持:
a. 请输入目的地服务。选择“使用服务名称(Use Service Name)”, 并且在”服务名称(Service Name)”栏位中输入服务名称。
b. 选择”数据库预设”的数据库连接类型。 - 在“地址(Addresses)”区,按照下列步骤来设定协议支持:
a. 按一下”新增(Add)”。会出现”新增地址(Add Address)”页面。
b. 请从”协议(Protocol)”清单中选择设定监听器要监听协议。
注意:也必须在客户端安装此协议。在大部分情况下,此协议会是TCP/IP。
c. 请在监听地址的“连接号(Port)”与”主机(Host)”栏位输入信息。 - 按一下”确定(OK)”。会回到“建立网络服务名称(Create Net Service Name)”页面。
- 按一下”确定(OK)”。会在”区域命名(Local Naming)”页面显示确认建立成功的信息。
- 请选择您刚建立的网络服务名称。按一下”测试连接(Test Connection)”。
- 请提供一个有效的数据库使用者名称及密码进行测试,按一下”测试(Test)”。接下来会显示”测试结果(Test Result)”页面。
4-13 使用Net Manager设定区域命名
您必须先设定好客户端电脑,才能连接到Oracle数据库。也必须先安装Oracle Database客户端软件,其中必须包含Oracle Net软件。安装好Oracle Net之后,就能使用Net Manager,以区域命名的方法设定网络服务名称:
- 在Windows,请按一下”开始” > “程序集” > Oracle > Configuration and Migration Tools > Net Manager,启动Oracle Net Manager。
在Unix或Linux上,请在命令行输入netmgr启动Oracle Net Manager。
- 反白标示”服务命名(Service Naming)”,再按一下页面左边的加号。会出现”网络服务名称精灵(Net Service Name Wizard)”。
- 输入网络服务名称以方便辨识它。您所选择的名称会出现在”服务命名(Service Naming)”文件夹下。按一下”下一步(Next)”。
- 选择用来连接到数据库的协议。例如,您可以接受TCP/IP (预设协议)。数据库监听器必须设定为使用相同的网络协议。按一下”下一步(Next)”。
- 输入数据库的主机名称。
- 输入数据库服务名称。再选择一种”连接类型”:“共用(Shared)”或“专用(Dedicated)”。如果您不确定,或是想要使用预设的数据库类型,请选择“数据库预设(Database Default)”,然后按一下”下一步(Next)”。
- 最后您可以使用输入的信息进行连接测试。您可以按一下”变更登入(Change Login)”来变更预设的登入,再输入使用者名称与密码。按一下”测试(Test)”,提示会通知您连接测试成功与否。
- 按一下”完成(Finish)”。新的服务会出现在”服务命名(Service Naming)”文件夹下。您可以在“服务识别(Service Identification)”与”地址设置(Address Configuration)”之下,检视或修改反白显示的服务设置。
4-14 总结
在本节中,您应该已学会如何:
- 使用Enterprise Mananger网络服务管理页面进行Oracle网络设置
- 使用监听器控制公用程序管理监听器
- 设定区域命名, 让客户端访问Oracle数据库
Comment