SQL语句在数据库中是如何执行的? - Xu


SQL语句在数据库中是如何执行的?

  • 第 1 步 - SQL 语句通过传输层协议(例如 TCP)发送到数据库。
  •  第 2 步 - 将 SQL 语句发送到命令解析器,在那里进行句法和语义分析,然后生成查询树。
  • 第 3 步 - 查询树被发送到优化器。优化器创建一个执行计划。 
  • 第 4 步 - 将执行计划发送给执行者。执行器从执行中检索数据。
  • 第 5 步 - 访问方法提供执行所需的数据获取逻辑
  • 第 6 步 - 访问方法决定 SQL 语句是否为只读。如果查询是只读的(SELECT 语句),则将其传递给缓冲区管理器进行进一步处理。缓冲区管理器在缓存或数据文件中查找数据。
  • 第 7 步 - 如果语句是 UPDATE 或 INSERT,则将其传递给事务管理器进行进一步处理。 
  • 第8步 -在事务期间,数据处于锁定模式。这是由锁管理器保证的。它还确保事务的 ACID 属性。