
mysql源代码
青阳不会被占用
stay hungry,stay foolish
展开
-
mysql数据库系统自带的4个默认数据库
无论是mysql5.7版本还是mysql8.0版本都包含了4个默认的数据库,即:mysql数据库information_schema信息数据库performance_schema性能数据库sys数据库4个数据库的信息和包含表格(以及每一个表格包含的意思)请看如下帖子:https://juejin.cn/post/6844903850009165838...原创 2020-12-28 10:25:27 · 2218 阅读 · 0 评论 -
mysql源代码目录innodb引擎目录详解
innobase目录解读api:arch:btr:B+树实现 File Name What Name Stands For Size Comment Inside File --------- -------------------- ------ ------------------- btr0btr.c B-tree / B-tree 82,400 B-tree btr0cur.c原创 2020-12-26 18:09:53 · 1575 阅读 · 0 评论 -
mysql源代码目录详解
mysql源代码的目录层次子目录含义(用途)BUILD开发者构建脚本。该目录包含用于在各种平台上进行编译的构建开关。每个选项集都有一个子目录。主要的是:alpha,ia64,solorisDocs文档client命令行客户端应用程序代码。cmd-line-utils外部库可增强命令行客户端(libedit和readline)。dbug调试库。我个人不喜欢使用它,因为它会改变执行力并掩盖时间敏感性错误,但是包括Monty在内的一些开发人员都喜欢它能够打印原创 2020-12-26 18:06:13 · 1830 阅读 · 0 评论 -
mysql源代码解析经典类——SELECT_LEX类
此类表示查询块,又名查询规范,该查询块由SELECT关键字,表列表,可选的WHERE子句,GROUP BY等组成。在#include <sql_lex.h>中。此类表示查询块,又名查询规范,该查询块由SELECT关键字,表列表,可选的WHERE子句,GROUP BY等组成。在#include <sql_lex.h>中。公共函数 //构造并初始化SELECT_LEX对象 SELECT_LEX (MEM_ROOT *mem_root, Item *where, Item原创 2020-12-22 00:02:33 · 1040 阅读 · 0 评论 -
mysql源代码解析经典类——sql解析Lex类
LEX对象当前具有三个不同的用途:它包含SQL命令的一些通用属性,例如sql_command,数据更改语句语法中是否存在IGNORE以及表列表(query_tables)。它包含一些执行状态变量,例如m_exec_started(开始执行时设置为true),插件(语句使用的插件列表),insert_update_values_map(某些INSERT语句使用的对象的映射)等。它包含许多对Sql_cmd的子类来说是本地的成员,例如purge_value_list(对于PURGE命令),kill_val原创 2020-12-21 23:58:11 · 1195 阅读 · 0 评论 -
mysql源代码解析经典类——TABLE类
表类定义了MySQL 数据库表在 MySQL 内存中的形式。表以两种形式存在——-打开或关闭状态。MySQL要想使用表,必须先将其打开。表描述类是在表被打开时创建。表描述类创建后会被置于表缓存(table_cache)中,等待下一个查询的重用,以提高访问的效率。 表描述类对象经常在查询解析、查询优化、访问控制和查询缓存代码中被引用。所以了解它的组成有助于读者对MySQL底层对表操作的理解。 sql下的table.h公共成员函数//优化和执行后重置字段状态void reset ()//初原创 2020-12-21 20:44:07 · 969 阅读 · 0 评论 -
mysql源代码解析经典类——Field类
Field类用于描述表中的列或属性。Field是对列数据类型以及属性的定义。Field类是一个抽象类。Field类有许多的具体子类。几乎每种类型的列都有相对应的Field子类。sql下的Field.h文件 ,其继承派生关系如下Field基类->Field_Num类->Field_real类->Field_decimal类 ->Field_float ->Field_double ->原创 2020-12-21 20:40:50 · 1464 阅读 · 0 评论 -
mysql内核开发重要资料2
https://mysqlhighavailability.com/https://mysqlserverteam.com/http://mysql.taobao.org/monthly/https://www.jianshu.com/u/76d35166b8a7https://www.jianshu.com/c/8a9c7f83dfe7https://dev.mysql.com/doc/dev/mysql-server/latest/原创 2020-12-21 11:50:45 · 261 阅读 · 0 评论 -
mysql源代码解析经典类——THD类
1.1 线程类THD概述对于每个客户端连接,我们使用THD作为线程/连接描述符创建一个单独的线程。1.2 位置#include <sql_class.h>嵌套类//表示只读可连接事务的类,封装了有关如何备份当前事务的状态,如何在SE中启动只读可连接事务,将其完成,然后将其恢复为原始状态的知识。class Attachable_trx//从THD :: Attachable_trx类派生的类允许在可附加事务中进行更新。class Attachable_trx_rw//E原创 2020-12-18 18:56:58 · 1923 阅读 · 0 评论