自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 问答 (1)
  • 收藏
  • 关注

原创 MySQL 8.0 GDB源码调试MySQL协议中客户端请求的分发

在下面函数上打上断点。启动gdb在另外一个终端,使用mysql连接DB。

2025-10-28 17:20:08 359

原创 MySQL 8.0 GDB源码调试表的打开

对应的函数如下/***/在open_table函数中,会尝试获取TABLE_SHARE缓存。if (!..}在上面的函数中,会最终调用get_table_share这个函数来获取缓存。/**/

2025-10-15 13:45:09 320

原创 MySQL 8.0 DB启动相关源码介绍

主函数会调用mysqld.cc中的mysqld_main函数,进行DB的一系列初始化动作。如果开启了performance_schema,初始化相关配置。决定默认的数据库端口和socket名字。执行基本的线程库和堆内存初始化。读取优化器成本模型配置表。初始化存储引擎等核心模块。初始化GTID的设置。将pid保存到文件中。

2025-10-10 19:00:00 157

原创 MySQL 8.0 数据库连接相关源码介绍

​​VIO(Virtual I/O)​​ 是一个​​对网络通信底层进行封装的抽象层​​。它主要用于处理MySQL客户端与服务器之间,以及服务器内部的各种网络I/O操作。主要是在handle_connection函数中实现。如果连接活跃,进入循环,执行对应的DB命令。主函数会返回mysqld_admin函数。在另外一个终端中,开启一个连接会话。接下来是有vio的创建和初始化。连接事件循环函数的具体定义。

2025-10-09 18:35:16 244

原创 MySQL 8.0 GDB源码调试

想要调试源码,需要使用编译过的MySQL版本,在编译的时候加上-DWITH_DEBUG=1参数,这样才可以在调试的时候在对应的函数上面加上断点。

2025-09-26 10:05:46 275

原创 SQLite源码B-tree读写核心函数介绍​​

会在freelist中就近搜索未分配的页,新的页被标记为脏页。在页的cell索引上,插入一个新的cell。将页中的数据返回给freelist。初始化BtShared和游标。写入新表的root页的页号。从数据库文件分配一个新的页。创建一张BTree表。

2025-09-22 20:00:00 205

原创 SQLite源码Btree的介绍

对于表中任何数据条目来说,对应的key和数据组成了payload,一定数据量的payload可以直接在页上面存放。游标时数据库文件中,指向特定b-tree的条目的指针,对应MemPage和MemPage.aCell[]中的索引。cell指针按照顺序存储,这样做的好处是,新的cell可以很容易添加而不会导致页的分裂。对象中的信息来源于磁盘上页的内容。每个页有一个小的头,包含了Ptr(N)指针和其他信息,例如key和数据的大小。在树的实现上,一个单独的数据文件可以包含一颗或多颗独立的B树。

2025-09-19 18:00:22 155

原创 MySQL 8.0创建使用通用表空间

表空间指定数据目录外的磁盘。使用数据目录存放表空间。

2023-07-19 22:45:00 386

原创 PostgreSQL 14.2 源码安装

在此步骤,要求输入超级用户 postgres 用户的密码。运行configure程序配置编译选项。--prefix 指定安装目录。创建postgres用户和组。

2023-06-21 16:00:00 242

原创 MySQL 8.0报错1114, “The table ‘/data/mysql/5306/tmp/#sql70da_911_3‘ is full

MySQL 8.0报错1114, "The table '/data/mysql/5306/tmp/#sql70da_911_3' is full

2022-09-16 19:00:00 711

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除