文档章节

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

wangbinbin0326
 wangbinbin0326
发布于 2015/05/28 13:44
字数 961
阅读 36
收藏 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
深入理解openstack网络架构(1)

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

halcyonbaby
2014/11/26
0
0
Oracle --- 基础篇 数据库连接命名方法

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

wangbinbin0326
2015/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

day63-20180821-流利阅读笔记-待学习

性别歧视在日本:“我是女生,所以社会不让我学医” 毛西 2018-08-21 1.今日导读 大家在看病的时候,有留意过女医生的比例吗?在性别歧视现象十分严重的日本,男医生和女医生的比例达到了惊人...

aibinxiao
52分钟前
2
0
Ubuntu18.04 显卡GF-940MX安装NVIDIA-390.77

解决办法: 下面就给大家一个正确的姿势在Ubuntu上安装Nvidia驱动: (a)首先去N卡官网下载自己显卡对应的驱动:www.geforce.cn/drivers (b)下载后好放在英文路径的目录下,怎么简单怎么来...

AI_SKI
今天
4
0
深夜胡思乱想

魔兽世界 最近魔兽世界出了新版本, 周末两天升到了满级,比之前的版本体验好很多,做任务不用抢怪了,不用组队打怪也是共享拾取的。技能简化了很多,哪个亮按哪个。 运维 服务器 产品 之间的...

Firxiao
今天
1
0
MySQL 8 在 Windows 下安装及使用

MySQL 8 带来了全新的体验,比如支持 NoSQL、JSON 等,拥有比 MySQL 5.7 两倍以上的性能提升。本文讲解如何在 Windows 下安装 MySQL 8,以及基本的 MySQL 用法。 下载 下载地址 https://dev....

waylau
今天
2
0
微信第三方平台 access_token is invalid or not latest

微信第三方开发平台code换session_key说的特别容易,但是我一使用就带来无穷无尽的烦恼,搞了一整天也无济于事. 现在记录一下解决问题的过程,方便后来人参考. 我遇到的这个问题搜索了整个网络也...

自由的开源
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部