Oracle进阶学习2:SQL语句执行过程
2019-06-11 20:24
1286 查看
文章目录
一些背景知识
- ORACLE数据库启动的时候,Oracle首先在内存中划出一段空间启动一堆进程,进程以及该内存区域统称为Oracle实例
- Oracle实例关联的基本内存结构包括:
系统全局区(SGA)由所有服务器进程和后台进程共享,对于所有进程来说,内存空间共享,实际工作中会有一定区域的分配
程序全局区(PGA)专用于某一个服务进程或者后台进程,每一个进程使用一个PGA,Oracle新版本,存在一个很大空间的PGA空间,每启动一个进程,会将一定PGA空间分给对应的进程,重点是前台进程和PGA的关系 - Oracle数据库三种文件组成 .ctl文件 控制文件
- .log文件 日志文件
- .dbf 数据文件
相关知识
Server process是实例的进程,主要在SQL处理时执行部分功能
SQL语句的执行过程
- 客户端输入SQL语句
- SQL语句经过网络到达数据库实例
- Server process拿到SQL语句之后进行解析,首先应该是去shared pool查找是否存在对应的语句以及执行计划,如果没有找到,server process自己解析进行下一步去执行解析,解析步骤如下:
1. SQL process判断语句语法是否正确
2. 访问的表是否具有访问权限
3. SQL语句涉及的表以及视图数据库有没有
4. SQL语句应该如何执行->寻找最优的执行方法,然后生成执行计划 - server process根据SQL语句的执行计划去DBF取出数据,放到buffer cache,然后返给用户,在此之前是server process首先寻找的是buffer cache,如果存在则直接在buffer cache取出数据,
相关文章推荐
- Oracle学习之sql语句执行过程分析
- Oracle执行SQL语句的过程
- oracle中SQL语句整个执行过程简要概述
- 转:Oracle中SQL语句执行过程中
- 我的Java学习笔记1——java执行Oracle的sql语句时报错ORA-00911无效字符错误
- Oracle进阶学习3:SQL语句解析类型——硬解析和软解析
- Asp.Net访问Oracle 数据库 执行SQL语句和调用存储过程
- [PL/SQL] oracle sql语句 存储过程执行慢,单独执行快
- 跟踪oracle中sql语句执行过程及相关知识拓展
- Asp.Net访问Oracle 数据库 执行SQL语句和调用存储过程
- Oracle SQL语句执行过程
- 3_Oracle_SQL语句执行过程剖析
- 跟踪oracle中sql语句执行过程及相关知识拓展
- Oracle sql语句执行过程图文分析
- Oracle 存储过程中执行动态合成SQL语句输出多条记录
- Oracle SQL语句执行过程
- oracle 解除 sql语句、存储过程在执行中造成的锁
- Oracle SQL语句执行过程
- oracle执行SQL语句的过程分析
- Oracle sql语句执行过程图文分析