【Oracle 客户端连接数据库过程解析】

文章目录

    • 一、开篇
    • 二、Oracle客户端简介
    • 三、连接过程解析

一、开篇

Oracle数据库以其卓越的性能和稳定性赢得了众多企业的信赖。作为开发者或数据库管理员,理解Oracle客户端如何与数据库建立连接,是确保系统正常运行的关键。

二、Oracle客户端简介

首先,我们要了解什么是Oracle客户端。简单来说,它是用户与Oracle数据库交互的接口,提供了一系列工具和库,使用户能够轻松地连接到数据库,并执行各种操作。

重客户端模式:PLSQL、DEVELOPER、TOAD、以及非服务器本地的SQLPLUS。
轻客户端模式:JDBC、ODBC这种连接驱动去连接数据库。
本地客户端(服务端的本地客户端): SQLPLUS

三、连接过程解析

在这里插入图片描述

在 Oracle 数据库中,LREG(Listener Registration)进程是一个后台进程,负责向监听器注册数据库实例信息。当数据库实例启动时,它会通过LREG 进程将自己的信息注入(或者注册)到监听器中,以使客户端能够连接到它。

下面是大致的注入过程:

  • 数据库实例启动: 数据库实例启动后会创建 LREG 进程,该进程负责与监听器进行通信。

  • LREG 进程与监听器建立连接:LREG 进程通过网络连接与监听器建立通信渠道。

  • 注册数据库实例信息:LREG 进程将数据库实例的相关信息(如服务名、主机名、端口号等)发送给监听器。

  • 监听器接收实例信息:监听器接收到 LREG 进程发送的数据库实例信息。

  • 监听器更新信息:监听器将接收到的数据库实例信息更新到自己的注册表中,以便将来的连接请求能够正确路由到相应的数据库实例。

Oracle客户端连接数据库过程:
1.客户端输入ORACLE的连接串,产生连接请求
客户端将提供的连接串进行解析并提取连接信息,包括主机名、端口号、服务名等。

2.监听器将收到的客户端请求发送给会话区监听器内部会将客户端发送的请求传递到会话区

3.会话区验证请求是否合法
验证客户端连接请求的合法性,包括检查客户端的IP地址、端口号,并进行连接权限的验证。

4.建立连接(SERVERPROCESS)
会话区验证请求成功,将与前台进程(SERVERPROCESS)建立通信。

5.SERVERPROCESS将验证结果传递给监听器

6.监听器返回验证结果给客户端

7.客户端与SERVERPROCESS生成会话信息
SERVERPROCESS前台进程与客户端之间建立会话。

扩展:
1.ORACLE产生会话用的是什么连接协议:IPC协议(TCP/IP协议精简后的协议)
2.栈区:程序生成区或变量操作区。

SELECT * FROM TAB WHERE COL1=&a;

&a代表绑定变量。所有的变量都在这个区中进行赋值或更改。
3.会话区(会话全局区)
会话信息缓存区(会话记录区):这里记录当前连接会话的信息

4.私有 SQL 区
私有 SQL 区是指每个会话(Session)在内存中分配的用于执行 SQL 语句的空间

5.运行区: 持久区产生的执行计划将在这个区域中进行运行

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/149722.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW进行MQTT通信及数据解析

需求:一般通过串口的方式进行数据的解析,但有时候硬件的限制,没法预留串口,那么如何通过网络的方式特别是MQTT数据的通信及解析 解决方式: 1.MQTT通信控件: 参考开源的mqtt-LabVIEW https://github.com…

PostGIS学习教程七:关于几何图形的练习

文章目录 一、函数列表二、练习 一、函数列表 以下是我们迄今为止看到的所有函数的汇总,它们应该对练习有用! sum(expression) aggregate to return a sum for a set of records count(expression) aggregate to return the size of a set of records …

JAVA G1垃圾收集器介绍

为解决CMS算法产生空间碎片和其它一系列的问题缺陷,HotSpot提供了另外一种垃圾回收策略,G1(Garbage First)算法,通过参数-XX:UseG1GC来启用,该算法在JDK 7u4版本被正式推出,官网对此描述如下&am…

JS-项目实战-更新水果单价更新小计更新总计

1、fruit.js //当页面加载完成后执行后面的匿名函数 window.onload function () {//get:获取 Element:元素 By:通过...方式//getElementById()根据id值获取某元素let fruitTbl document.getElementById("fruit_tbl");//table.rows:获取这个表格的所有的行&a…

目标检测—Yolo系列(YOLOv1/2/v3/4/5/x/6/7/8)

目标检测概述 什么是目标检测? 滑动窗口(Sliding Window) 滑动窗口的效率问题和改进 滑动窗口的效率问题:计算成本很大 改进思路 1:使用启发式算法替换暴力遍历 例如 R-CNN,Fast R-CNN 中使用 Selectiv…

S32DS踩坑日记五-bootloader跳转APP时触发DefaultISR

S32DS踩坑日记五-bootloader跳转APP时触发DefaultISR bootloader和APP由另一位同事开发过程中,被导师叫回去写论文了。 由于项目不急,接手后未作任何改动,后面硬件工程师手工焊了几块电路版,需要刷上程序测试电路板。然后就遇到了…

手摸手入门Springboot2.7集成Swagger2.9.2

环境介绍 技术栈 springbootmybatis-plusmysqloracleSwagger 软件 版本 mysql 8 IDEA IntelliJ IDEA 2022.2.1 JDK 1.8 Spring Boot 2.7.13 mybatis-plus 3.5.3.2 REST软件架构风格 REST即表述性状态传递(英文:Representational State T…

Linux项目自动化构建工具-make/Makefile

背景 会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力 一个工程中的源文件不计数,其按类型、功能、模块分别放在若干个目录中,makefile定义了,一系列的规则来指定,哪些文件需要先编译,…

我把微信群聊机器人项目开源

▍PART 序 开源项目地址》InsCode - 让你的灵感立刻落地 目前支持的回复 ["抽签", "天气", "讲笑话", "讲情话", "梦到", "解第", "动漫图", "去水印-", "历史今天", "星座-…

2023年【北京市安全员-B证】试题及解析及北京市安全员-B证证考试

题库来源:安全生产模拟考试一点通公众号小程序 北京市安全员-B证试题及解析根据新北京市安全员-B证考试大纲要求,安全生产模拟考试一点通将北京市安全员-B证模拟考试试题进行汇编,组成一套北京市安全员-B证全真模拟考试试题,学员…

word批量图片导出wps office word 图片批量导出

word批量导出图片教程 背景 今天遇到了一个场景,因为word里的图片打开看太模糊了,如果一个一个导出来太麻烦。想批量将word中的图片全部导出 但是,wps导出的时候需要会员 教程开始: 将word保存为 .docx 格式,可以按F1…

JWT登录认证(2认证)

备注说明: 用户登录成功后,系统会自动下发JWT令牌,然后在后续的每次请求中,浏览器都需要在请求头header中携带到服务器,请求头的名称为Authorization,值为登录时下发的JWT令牌。 如果检测到用户未登录&…

mysql之搭建MHA架构实现高可用

1、定义 全称是masterhigh avaliabulity。基于主库的高可用环境下可以实现主从复制及故障切换(基于主从复制才能故障切换) MHA最少要求一主两从,半同步复制模式 2、作用 解决mysql的单点故障问题。一旦主库崩溃,MHA可以在0-30…

​软考-高级-系统架构设计师教程(清华第2版)【第8章 系统质量属性与架构评估(P286~319)-思维导图】​

软考-高级-系统架构设计师教程(清华第2版)【第8章 系统质量属性与架构评估(P286~319)-思维导图】 课本里章节里所有蓝色字体的思维导图

甲方与三方渗透团队的协作注意点

文章目录 以下是优化后的内容: 作为甲方安全团队主导的渗透攻击,以下几点需要注意: 预备充分 与测试团队协调,提供乙方攻击所需的必要资源,以及具有甲方特色的资源。例如,如果认为自己的权限系统需要重点评…

Datawhale智能汽车AI挑战赛

1.赛题解析 赛题地址:https://tianchi.aliyun.com/competition/entrance/532155 任务: 输入:元宇宙仿真平台生成的前视摄像头虚拟视频数据(8-10秒左右);输出:对视频中的信息进行综合理解&…

【数据结构】单链表 | 详细讲解

线性表顺序存储结构的优缺点 顺序表优点 无须为了表示中间的元素之间的逻辑关系而增加额外的存储空间;因为以数组形式存储,可以快速地存取表中任一位置的元素。 顺序表缺点 插入和删除操作需要移动大量元素,时间复杂度为O(N);…

应用协议安全:Rsync-common 未授权访问.

应用协议安全:Rsync-common 未授权访问. Rsync 是 Linux 下一款数据备份工具,支持通过 rsync 协议、ssh 协议进行远程文件传输。其中 rsync 协议默认监听 873 端口,如果目标开启了 rsync 服务,并且没有配置 ACL 或访问密码&#…

性能测试场景的设计方法

作者|李文,自如-质量中心 来源|自如技术公众号 背景 引用:根据2008年Aberdeen Group的研究报告,对于Web网站,1秒的页面加载延迟相当于少了11%的PV(page view),相当于降低…

【Java】若依的使用代码生成及字典的使用

一、导言 1、介绍 若依管理系统是一款基于Java语言开发的开源管理系统。它采用了Spring Boot框架,使得开发更加快速和高效。同时,它还集成了MyBatis Plus,进一步简化了数据库操作。若依管理系统的界面简洁美观,且支持多语言&#…