文档章节

Oracle --- 基础篇 网络连接原理

wangbinbin0326
 wangbinbin0326
发布于 2015/05/28 13:44
字数 961
阅读 45
收藏 0

##第一. Oracle Network原理


###1. Oracle Net Services

此处输入图片的描述

  • 使用Oracle Net Services 可建立从客户机或中间层应用程序到Oracle 服务器的网络连接。
  • 建立网络会话之后,Oracle Net 充当客户机应用程序与数据库服务器的数据信使。它负责建立并维护客户机应用程序和数据库服务器之间的连接,并负责在二者之间交换消息。
  • Oracle Net(或模拟Oracle Net 的程序,如Java 数据库连接)位于需要与数据库服务器通信的每台计算机上。

  • 在客户机计算机上,Oracle Net 是一个用于连接到数据库的后台组件。
  • 在数据库服务器上,Oracle Net 包含一个称为Oracle Net Listener 的活动进程,该进程负责协调数据库与外部应用程序之间的连接。
  • Oracle Net Services最常见的用法是传入数据库连接。通过配置其它网络服务,可允许访问外部代码库(EXTPROC),以及通过Oracle Heterogeneous Services 将Oracle 实例连接到非Oracle 数据源,如Sybase、Informix、DB2 和SQL Server。

###2. Oracle Net Listerner

此处输入图片的描述

Oracle Net Listener(或简称“监听程序”)是将所有非本地用户连接到Oracle 实例的网关。单个监听程序可用于多个数据库实例以及成千上万个客户机连接。


###3. 建立网络连接

此处输入图片的描述

要建立客户机或中间层连接,Oracle Net 要求客户机了解 下列事项:

  • 运行监听程序的主机
  • 监听程序监视的端口
  • 监听程序使用的协议
  • 监听程序处理的服务名

###4. 建立连接

此处输入图片的描述

  • Oracle Net 名称解析运行完毕之后,连接请求将从用户或中间层应用程序(以下称为“用户进程”)传递到监听程序。监听程序会接收一个连接数据包,之后会检查这个连接数据包请求的Oracle Net 服务名是否有效。
  • 如果没有请求服务名(例如tnsping 请求),监听程序会通知连接请求,此外不执行任何其它操作。
  • 如果请求的服务名无效,则监听程序会将错误代码传输给该用户进程。

###4. 用户会话

此处输入图片的描述

如果CONNECT 数据包请求了一个有效的服务名,则监听程序将衍生一个新的进程来处理该连接。这个新进程称为“服务器进程”。监听程序会连接到该进程并传递初始化信息,包括用户进程的地址信息。此时,监听程序不再处理连接,所有工作都会传递到服务器进程。

服务器进程会检查用户的验证身份证明(通常为口令),如果身份证明有效,就会创建用户会话。


专用服务器进程:建立会话后,服务器进程随即充当服务器上的用户代理。服务器进程负责以下工作:

  • 进行语法分析并运行通过应用程序发出的所有SQL 语句
  • 检查数据块的数据库缓冲区高速缓存,这些数据块是执行SQL语句所必需的
  • 从磁盘上的数据文件中将必要的数据块读入到系统全局区(SGA) 的数据库缓冲区高速缓存部分(如果SGA 中没有这些数据块)
  • 管理所有排序活动。排序区是用于处理排序的内存区;它包含在与程序全局区(PGA)关联的那部分内存中
  • 将结果返回到用户进程,以便应用程序可以处理这些信息
  • 读取审计选项并将用户进程报告给审计目标

© 著作权归作者所有

共有 人打赏支持
wangbinbin0326
粉丝 7
博文 39
码字总数 43554
作品 0
杭州
数据库管理员
私信 提问
最全java学习路线图 java学习指南

JavaEE学习路线图 准备篇 适用/适合人群:适合基础小白 目标:掌握JavaSE。 ●技术点小节: 1.开发工具的安装配置的介绍 2.JDK安装 3.DOS环境编程 4.Eclipse的安装使用 ●JAVA基础 1.基本的语...

耳东陈_f1e5
01/14
0
0
经典Oracle常用技巧荟萃

height:32.25pt;width:525pt">第一部分 安装优化篇 height:29.25pt;width:525pt">第二部分 基础管理篇 collapse;width:333pt"> collapse;width:333pt"> height:29.25pt;width:525pt">第三部分......

51cto_bbs
2013/04/02
0
0
Oracle 基础篇 --- Oracle Network配置

第二. Oracle Network配置 配置和管理Oracle Network 的工具: * Enterprise Manager 的“Net Services Administration(网络服务管理)”页 1. Oracle Net Manager * 提供一个图形用户界面(...

wangbinbin0326
2015/05/29
0
0
Oracle --- 基础篇 数据库连接命名方法

命名方法 4.1 简便连接 * 不需要进行客户端配置 * 仅支持TCP/IP(无SSL) * 不支持高级连接选项,如:连接时故障转移, 源路由, 负载平衡 * 添加EZCONNECT到sqlnet.ora文件 4.2 本地命名 * 需...

wangbinbin0326
2015/06/01
0
0
深入理解openstack网络架构(1)

原文地址: https://blogs.oracle.com/ronen/entry/divingintoopenstacknetworkarchitecture 前言 openstack网络功能强大同时也相对更复杂。本系列文章通过Oracle OpenStack TechPreview介绍...

halcyonbaby
2014/11/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

EOS docker开发环境

使用eos docker镜像是部署本地EOS开发环境的最轻松愉快的方法。使用官方提供的eos docker镜像,你可以快速建立一个eos开发环境,可以迅速启动开发节点和钱包服务器、创建账户、编写智能合约....

汇智网教程
今天
3
0
《唐史原来超有趣》的读后感优秀范文3700字

《唐史原来超有趣》的读后感优秀范文3700字: 作者:花若离。我今天分享的内容《唐史原来超有趣》这本书的读后感,我将这本书看了一遍之后就束之高阁了,不过里面的内容一直在在脑海中回放,...

原创小博客
今天
6
0
IC-CAD Methodology知识图谱

CAD (Computer Aided Design),计算机辅助设计,指利用计算机及其图形设备帮助设计人员进行设计工作,这个定义同样可以用来近似描述IC公司CAD工程师这个岗位的工作。 早期IC公司的CAD岗位最初...

李艳青1987
今天
7
0
CompletableFuture get方法一直阻塞或抛出TimeoutException

问题描述 最近刚刚上线的服务突然抛出大量的TimeoutException,查询后发现是使用了CompletableFuture,并且在执行future.get(5, TimeUnit.SECONDS);时抛出了TimeoutException异常,导致接口响...

xiaolyuh
今天
5
0
dubbo 搭建与使用

官网:http://dubbo.apache.org/en-us/ 一,安装监控中心(可以不安装) admin管理控制台,monitor监控中心 下载 bubbo ops 这个是新版的,需要node.js环境,我没有就用老版的了...

小兵胖胖
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部