一、JDBC执行过程 1.1预编译的三种执行器 简单执行器(Statement)存在sql注入问题,发送一条一条静态sql语句(包含参数),传输体量比较大。 预处理执行器(PreparedStatement)可以防止sql注入问题,发送一条sql语句包含若干组参数,传输体量比较小。 存储过程处理器( ...
分类:
数据库 时间:
2020-06-03 00:52:09
阅读次数:
114
Executor分成两大类,一类是CacheExecutor,另一类是普通Executor。 普通类又分为: ExecutorType.SIMPLE: 这个执行器类型不做特殊的事情。它为每个语句的执行创建一个新的预处理语句。(默认)ExecutorType.REUSE: 这个执行器类型会复用预处理语 ...
分类:
其他好文 时间:
2020-05-30 19:55:33
阅读次数:
57
源码和Apk下载链接:https://pan.baidu.com/s/1qTwtt9Zh29mbh8z2K3jC7w 提取码:seg8 我在https://blog.csdn.net/zy0412326/article/details/106297472介绍过,这里就不再介绍了。介绍一下更新内容。 ...
分类:
移动开发 时间:
2020-05-29 13:43:45
阅读次数:
511
MySQL 是单进程多线程的 MySQL执行过程 连接器,管理连接,权限验证 查询缓存 分析器,词法分析,语法分析,语法树,检查语法是否有错误 预处理器,进一步检查解析树是否合法,如表名是否存在等 优化器,选择索引,生成执行计划 执行器,操作引擎,返回结果,并将结果缓存 如果查询中包含任何用户自定义 ...
分类:
数据库 时间:
2020-05-27 20:53:34
阅读次数:
109
一、基础架构 MySQL 可以分为 Server 层和存储引擎层两部分。 Server 层包括连接器、查询缓存、分析器、优化器、执行器等,所有跨存储引擎 的功能都在这一层实现,比如存储过程、触发器、视图等。 而存储引擎层负责数据的存储和提取。支持 InnoDB、MyISAM等多个存储引擎。最常用的存 ...
分类:
数据库 时间:
2020-05-27 12:07:37
阅读次数:
69
https://rustcc.cn/article?id=e6d50145-4bc2-4f1e-84da-c39c8217640b 前提 这篇文章主要描述了Rust中异步的原理与相关的实现,Rust异步也是在最近的版本(1.39)中才稳定下来。希望可以通过这边文章在提高自己认知的情况下,也可以给读者 ...
分类:
其他好文 时间:
2020-05-24 14:05:26
阅读次数:
109
本文讲一下mysql的整体查询过程 1、基本的框架 客户端 - > 连接器 - > 分析器 -> 优化器 - >执行器 - > 存储引擎 - > 查询缓存 - > 这里还有一个缓存的位置,是在连接器处,如果缓存中存在要查询的结果则直接走缓存返回 但在现实中开启缓存的几率比较低 原因1、对于一个表的更 ...
分类:
数据库 时间:
2020-05-23 20:19:28
阅读次数:
88
一条查询语句一般经过连接器、分析器、优化器、执行器等模块,最后到达存储引擎。一条更新语句也需要经连接器连接数据库、分析器会通过词法和语法解析知道这是一条更新语句、优化器决定要使用的索引、然后执行器执行负责具体执行,找到这一行,然后更新。更新语句和查询语句不一样的是,更新流程还涉及两个重要的日志模块,redolog(重做日志)和binlog(归档日志)。
分类:
数据库 时间:
2020-05-15 13:04:48
阅读次数:
85
MySQL由Server层和引擎层两部分组成。Server层包括连接器、查询缓存、分析器、优化器、执行器。所有的内置函数(如日期、时间、数学和加密函数)、所有跨存储引擎(存储过程、触发器、视图)的功能都在这层实现。存储引擎层负责数据的存储和提取。支持InnoDB、MyIsAM、Menory等诸多存储引擎,MySQL5.5.5版本开始成为默认存储引擎连接器:连接器负责跟客户端建立连接、获取权限、维持
分类:
数据库 时间:
2020-05-13 09:22:25
阅读次数:
70
日志系统主要有redo log(重做日志)和binlog(归档日志)。redo log是InnoDB存储引擎层的日志,binlog是MySQL Server层记录的日志, 两者都是记录了某些操作的日志(不是所有)自然有些重复(但两者记录的格式不同)。 图来自极客时间的mysql实践,该图是描述的是M ...
分类:
数据库 时间:
2020-05-11 01:03:15
阅读次数:
81