01 Oracle基础架构:一条SQL查询语句是如何执行的

Oracle数据库的体系架构非常复杂,很难用一篇文章介绍清楚。SQL语句是外界和数据库打交道的主要方式,今天我们就以一条SQL的视角,看看一条查询语句在数据库中是如何执行的。

应用架构

最早的应用架构主要是CS(Client-Server)架构,其主要构成是访问数据的客户端和主要由数据库担当的服务器端。后来随着互联网技术的发展,很多应用通过浏览器来访问数据,因此又出现了BS(Browser-Server)架构。由于浏览器更靠近用户端,且其设计上以轻便为主,不适宜承担过多的功能,因此在BS架构中通常还有一层 – 应用层,实际上是由浏览器发送指令到应用层,应用层再和数据库进行交互。
在这里插入图片描述

用户通过浏览器或者客户端提交给Oracle数据库的SQL语句,需要经过一系列的操作,才能完成用户的目标,把SQL转换成最终的结果返回给客户端。下图是一个SQL语句的完整执行过程,主要包括SQL解析、SQL优化、SQL行源生成和SQL执行等几个阶段。
在这里插入图片描述

解析和优化阶段

SQL解析阶段,有可以细分为语法和语义检查、权限检查、生成执行计划等几个步骤。

  • 语法检查,这个很好理解,不是随便写几个单词就能交给数据库执行,需要验证提交的SQL语句是否符合SQL规范,是否满足语法要求;
  • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值