【赵渝强老师】Oracle的PGA与数据库连接建立的过程
首先,我们来了解一下Oracle的内存结构,如下:

关于Oracle的内存结构,详情请查看:【赵强老师】Oracle数据库的内存结构
(一)PGA的组成结构
PGA主要由以下三部分组成:
- 私有SQL区(Private SQL Area):私有SQL区包含了绑定变量值和运行时期内存结构信息等数据。
- 游标和SQL区(Cursors and SQL Areas):为打开游标和执行SQL提供必要的资源和空间内存
- 会话内存(Session Memory):会话内存是一段用于保存会话变量(如登录信息)和其他预会话相关信息的内存。对于共享服务器模式下,会话内存是共享的,而不是私有的。
(二)PGA相关的数据字典
- V$PGASTAT:存储着pga使用情况的一些信息,并在实例启动后,自动收集pga的实用信息。
- V$PGA_TARGET_ADVICE:这个视图是可以显示PGA优化建议器的估算预测结果,它显示了在各种PGA_AGGREGATE_TARGET值时,V$PGASTAT可能会显示的PGA性能统计数据。
(三)PGA与连接建立的过程
如下图所示。客户端先从tnsnames.ora文件中获取数据库服务器所在的IP、端口号、使用协议、服务名等信息,然后连接到数据库的监听程序,监听判断用户请求的服务名是否有效,如有效则请求服务器后台进程创建一个服务器进程,并给其分配PGA,之后监听将创建好的服务器程序的端口号和地址发送给用户进程,随后用户进程与监听的连接断开。用户进程就可以根据信息连接到服务器进程,服务器进程对用户进程进行身份验证,通常是输入账号密码,服务器进程将账号密码与缓冲区的数据字典中的内容进行匹配,如匹配成功则会话建立。

【赵渝强老师】Oracle的PGA与数据库连接建立的过程的更多相关文章
- Oracle XE自带数据库创建的过程
Oracle XE自带数据库如何创建的?XE.sql脚本定义实例究竟是怎样的?阅读下文,您可以找到这些问题的答案. Oracle XE自带数据库是如何创建的呢?这是很多人都提到过的问题,下面就为您详细 ...
- 201871010136—赵艳强《面向对象程序设计(java)》第十三周学习总结
201871010136—赵艳强<面向对象程序设计(java)>第十三周学习总结 博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https:// ...
- Oracle中HWM与数据库性能的探讨
Oracle中HWM与数据库性能的探讨 一.什么是高水位 HWM(high water mark),高水标记,这个概念在segment的存储内容中是比较重要的.简单来说,HWM就是一个segment中 ...
- oracle之 oracle database vault(数据库保险库)
在12c建库中 Database Vault 与 Label Security 选项,之前没有留意过,特意记录一下 12.1 中: 12.2 中: 转载:http://www.linuxidc.co ...
- 配置ORACLE 客户端连接到数据库
--================================= -- 配置ORACLE 客户端连接到数据库 --================================= Oracle ...
- 在Oracle 11.2的数据库中建表时遇到 RESULT_CACHE (MODE DEFAULT) ORA-00922: missing or invalid option
在Oracle 11.2的数据库中建表时遇到 RESULT_CACHE (MODE DEFAULT) ORA-00922: missing or invalid option hostdr:[/ho ...
- Oracle EBS使用adpatch工具打patch过程【Z】
Oracle EBS使用adpatch工具打patch过程 从Metalink下载补丁 登陆到Metalink(https://support.oracle.com),Oracle内部用户可以使用AR ...
- ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!)
原文:ORACLE PL/SQL编程之六:把过程与函数说透(穷追猛打,把根儿都拔起!) ORACLE PL/SQL编程之六: 把过程与函数说透(穷追猛打,把根儿都拔起!) 继上篇:ORACLE P ...
- Oracle 11g for Windows 简体中文版的安装过程
原文:Oracle 11g for Windows 简体中文版的安装过程 我的配置 操作系统:Windows Server 2003 sp2 内存:1024M以上 1.下载Oracle 11g 地址 ...
- Win环境下Oracle小数据量数据库的物理备份
Win环境下Oracle小数据量数据库的物理备份 环境:Windows + Oracle 单实例 数据量:小于20G 重点:需要规划好备份的路径,建议备份文件和数据库文件分别存在不同的存储上. 1.开 ...
随机推荐
- Tomcat 线程池学习总结
前提 Tomcat 10.1.x Tomcat线程池介绍 Tomcat线程池,源于JAVA JDK自带线程池.由于JAVA JDK线程池策略,比较适合处理 CPU 密集型任务,但是对于 I/O 密集型 ...
- python实例化对象过程
python实例化对象过程 Python中存在着一种静态的__new__()方法,通常在定义类时不会重写__new__()方法,于是Python在调用类时会自动寻找该类的继承对象(本例中为Object ...
- Fiddler使用界面介绍-右侧面板
右侧面板是对左侧请求进行解析的面板,点击左侧的请求右侧面板就会出现分析数据 1.Statistics关于HTTP请求的性能 2.Inspectors请求内容,包含请求数据和响应数据 3. AutoRe ...
- Jmeter函数助手4-RandomDate
RandomDate函数用于生成一段时间范围内的随机日期(年月日). Format string for DateTimeFormatter (optional) (default yyyy-MM-d ...
- 【MySQL】JSON相关
一些概念 MySQL里的json分为json array和json object. $表示整个json对象,在索引数据时用下标(对于json array,从0开始)或键值(对于json object, ...
- 【H5】09 音频和视频
现在我们可以轻松的为一张 web 网页添加简单的图像,下一步是开始为 HTML 文档添加音频和视频的播放器. 在这篇文章当中,我们会学习到 <video> 和 <audio> ...
- 【Mybatis】13 动态SQL
还是先准备演示环境 数据库: CREATE TABLE `t_user` ( `id` int NOT NULL AUTO_INCREMENT, `last_name` varchar(10) DEF ...
- 【Spring】08 后续的学习补充 vol2
1.[纯注解配置实现] 首先实现纯注解配置的第一件事情就是删除XML文件 然后编写一个类用于代替XML文件实现配置功能: 使用@Configuration将这个类注册为Spring容器 使用@Comp ...
- 使用Aspire优雅的进行全栈开发——WinUI使用Semantic Kernel调用智普清言LLM总结Asp.Net Core通过Playwright解析的网页内容
前言 这算是一篇学习记录博客了,主要是学习语义内核(Semantic Kernel)的实践,以及Aspire进行全栈开发的上手体验,我是采用Aspire同时启动API服务,Blazor前端服务以及Wi ...
- Cannot lower pallas_call on platform: cuda
Jax框架JAX-Triton不可用: 参考地址: MLIR translation rule for primitive 'pallas_call' not found for platform c ...