第三、四章 oracle.docVIP

  • 1
  • 0
  • 约1.29万字
  • 约 12页
  • 2018-04-10 发布于河南
  • 举报
第三、四章 oracle

一、网络结构 二、服务器注册 三、监听器控制程序 第 一 节 连接步骤 一、连接数据库的方式 我们可以有两种方式连接数据库,通过网络和不通过网络。如果客户端程序和ORACLE服务器在同一台主机上,那么,客户端和服务器端的连接就可以不通过网络。我们以前的连接都是这样子的。这种连接的要点是设置正确的数据库SID。即,在进入SQL*Plus前,设置环境变量ORACLE_SID的值为数据库的SID。我们在创建数据库时,要为数据库指定两个名字,一个是全局数据库名,我们就简称数据库名。另一个就是数据库SID。数据库SID在数据库创建后是无法改变的。在连接数据库时,ORACLE就是以数据库SID为准的。因为一台主机上可能有多个数据库,客户端程序必须知道自己所连接数据库的SID是什么,这样才能进一步的连接到指定的数据库上。设置环境变量ORACLE_SID的值,就是告诉客户程序要连接的数据库的SID是什么。在设置完这个值后,进入SQL*Plus,CONN 用户名/密码就可以连接数据库了。但这只适合本地连接。 远程连接的方式是“CONN 用户名/密码@连接描述符” 。在连接描述符中,记载了服务器主机的位置和要连接数据库的SID。以这种方式进行连接时,必须有监听程序的协助,当客户程序通过网络请求连接数据库服务器时,必须由监听程序负责接收客户端的连接请求,并为客户端按排和服务器的进一步的连接。 以前我们用的“CONN 用户名/密码”方式,这种方式是本地连接,这并没有通过监听程序。此时监听程序就算不启动也无所谓。当然了,这种连接方式仅限于本地,也就是不通过网络。如果是通过网络连接数据库,则必须要通过监听程序。 在连接服务器时,ORACLE又把连接模式分为专用服务器模式和共享服务器模式,这两种模式的连接步骤稍有差别,下面我们先以专用服务器模式为例,说一下连接的简单步骤。 二、客户端与ORACLE的连接步骤(专用服务器模式) 第一步:如上图,客户端通过网络向监听程序发送了一个“CONN 用户名/密码@服务名”。 第二步,监听器启动一个专门的服务器进程。并将客户端的连接转给专用服务器进程。 第三步,现在客户端直接的和专用服务器进程连接交互。监听器的任务已经结束了。服务器进程第一步要根据用户提供的用户名、密码,和存放在数据字典中的密码进行核对。如果密码正确,此时就算客户端和ORACLE真正的建立了连接,这也被称作ORACLE为用户创建了会话。创建会话并没有什么新的动作,只是在服务器进程核对密码后,就算创建了会话。以前,我们都把建立连接和创建会话当作一个概念,比如说“连接到ORACLE”,“创建到ORACLE的会话”,通常我们把这两句话当作一个意思。其实连接和会话意义并不相同。连接很好理解,指的是客户端和服务器进程间的连接途径。会话指的是一种状态,就是当用户名、密码经核对正确后,服务器进程随时等待客户端向它发送请求、命令。也就是在密码正确后,服务器进程随时候命,这就是创建了会话。 监听器在这整个过程中,发挥了桥粱的作用。它在主机上随时等待着客户端的连接请求。一旦发现网络上有客户端传来了连接请求,它马上开启一个服务器进程,并让客户端和服务器进程建立连接。 监听器一头连接客户端,一头连接服务器。分了使用客户端、服务器那够和监听器建立联系,我们需要在客户端、服务器端分别进行设置。在服务器端的设置,叫做在监听器上注册服务器。另外,监听器自身也需要配置。通常注册服务器的配置和监听器自身的配置都放在一个文件中,就是LISTENER.ORA。而客户端,也要知道自己该把连接信息发送到哪里,客户端的配置信息记录在tnsnames.ora文件中。下面我先来看看这两个配置文件。 第 二 节 监听器的启用与配置 在讨论listener.ora和tnsnames.ora之前,我们先说一下如何启动监听器和监听器的配置。先从监听器的启动开始: 一、启动监听器 无论是在WINDOWS下还是LINUX、UNIX,我们可以使用监听器控制程序:LSNRCTL,来启动监听器。命令如下,输入LSNRCTL,就可以进入到LSNRCTL中: D:\lsnrctl LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 20-5月 -2008 15:47:55 Copyright (c) 1991, 2005, Oracle. All rights reserved. 欢迎来到LSNRCTL, 请键入help以获得信息。 LSNRCTL 在提示符后使用START [监听器名],就可以启动监听器。如果机器上只配置了一个监听器,我们可以直接START,就可以启动监听器。如下: LSNRCTL start

文档评论(0)

1亿VIP精品文档

相关文档