wukong3405
码龄123天
关注
提问 私信
  • 博客:48,361
    48,361
    总访问量
  • 75
    原创
  • 24,212
    排名
  • 677
    粉丝
  • 0
    铁粉
  • 学习成就
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:江苏省
  • 加入CSDN时间: 2024-07-23
博客简介:

wukong3405的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    2
    当前总分
    147
    当月
    45
个人成就
  • 获得1,146次点赞
  • 内容获得0次评论
  • 获得1,173次收藏
创作历程
  • 75篇
    2024年
成就勋章
  • 入选《大数据领域内容榜》第43名
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

海山数据库(He3DB)源码详解:海山MySQL redo日志-日志文件组

1、日志文件组MySQL的数据目录下默认有两个名为和的文件,log buffer中的日志默认情况下就是刷新到这两个磁盘文件中。redo从上边的描述中可以看到,磁盘上的redo日志文件不只一个,而是以一个日志文件组的形式出现的。这些文件以ib_logfile[数字](数字可以是0、1、2…)的形式进行命名。
原创
发布博客 20 小时前 ·
280 阅读 ·
16 点赞 ·
0 评论 ·
7 收藏

海山数据库(He3DB)源码详解:海山MySQL redo日志-写入过程

一、redo log block设计InnoDB时为了更好的进行系统奔溃恢复,将通过mtr生成的redo日志放在大小为512字节的页中。为了和表空间中的页做区别,于是把用来存储redo日志的页称为block。一个的示意图如下:真正的redo日志都是存储到占用496字节大小的中。另外,占12个字节,占4个字节,存储的是一些管理信息。其中,
原创
发布博客 20 小时前 ·
552 阅读 ·
14 点赞 ·
0 评论 ·
5 收藏

海山数据库(He3DB)源码详解:海山MySQL redo日志-MTR

一、对底层页面中的一次原子访问的过程称之为一个,简称mtr。一个事务可以包含若干条语句,每一条语句其实是由若干个mtr组成,每一个mtr又可以包含若干条redo日志。
原创
发布博客 20 小时前 ·
343 阅读 ·
8 点赞 ·
0 评论 ·
15 收藏

海山数据库(He3DB)源码详解:主备复制read_backup_label

在数据库主备复制(如PostgreSQL的流复制等场景)中,时间点恢复是一种数据库恢复技术,它允许将数据库恢复到指定的历史时间点。周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师成功完成,则函数返回true,表示成功读取并解析了文件周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师。
原创
发布博客 2024.11.15 ·
479 阅读 ·
14 点赞 ·
0 评论 ·
15 收藏

海山数据库(He3DB)源码详解:主备复制pg_wal_replay_resume

周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师。
原创
发布博客 2024.11.15 ·
942 阅读 ·
18 点赞 ·
0 评论 ·
8 收藏

海山数据库(He3DB)源码解读:T_GrantRoleStmt原理浅析

(一)  GrantRoleStmt 是一个结构体,用于在 PostgreSQL 中表示授予或撤销角色的语句。类型: NodeTag解释: NodeTag 是一个枚举类型,表示不同类型的节点。在这里,type 用于标识这是一个 GrantRoleStmt 节点。通常,type 的值为 T_GrantRoleStmt。类型: List *解释: 这是一个链表(List),包含了将被授予或撤销的角色列表。每个元素是一个角色名称或角色标识符。这个变量指定了要操作的角色。
原创
发布博客 2024.11.15 ·
834 阅读 ·
25 点赞 ·
0 评论 ·
30 收藏

海山数据库(He3DB)源码解读:T_CreateRoleStmt原理浅析

(一)  CreateRoleStmt 是 He3DB 中用于表示创建角色 (CREATE ROLE) 语句的结构体。它包含了与角色创建相关的各种信息,包括角色类型、角色名称和角色选项。NodeTag type 这个成员用于标识结构体的类型。在 He3DB 的抽象语法树 (AST) 中,每个节点都有一个类型标识符(NodeTag),用于区分不同类型的节点。CreateRoleStmt 会被标记为其特定的类型,以便在AST中进行正确的处理。ROLESTMT_ROLE,//表示一般的角色声明。
原创
发布博客 2024.11.15 ·
718 阅读 ·
16 点赞 ·
0 评论 ·
13 收藏

海山数据库(He3DB)源码解读:T_AlterRoleStmt原理浅析

(一)  AlterRoleStmt 是一个用于定义 He3DB 中 ALTER ROLE 命令语法的数据结构。它是一个结构体,包含了执行 ALTER ROLE 操作所需的所有信息。/* role */NodeTag type: 这是一个枚举类型,用于标识该结构体是哪种节点类型。NodeTag 通常用于区分不同的 SQL 语句类型。RoleSpec *role: 这是一个指向 RoleSpec 结构体的指针,表示要修改的角色。RoleSpec 结构体可能包含角色的名称或其他标识信息。
原创
发布博客 2024.11.15 ·
757 阅读 ·
18 点赞 ·
0 评论 ·
22 收藏

海山数据库(He3DB)源码解读:SubBegin-Rollback

海山数据库(He3DB)源码详解:子事务块内核函数执行过程本文介绍了子事务执行过程中,从SAVEPOINT定义子事务开始到子事务结束释放RELEASE或者回滚ROLLBACK To的内核函数执行过程。
原创
发布博客 2024.11.15 ·
801 阅读 ·
25 点赞 ·
0 评论 ·
16 收藏

海山数据库(He3DB)源码解读:BEGIN-END-ABORT

事务SQL语句的执行过程,会先通过事务块函数修改事务块状态,然后根据事务块状态执行不同的事务行为。因此,本章会讲解事务块的开始和结束过程的事务块函数。
原创
发布博客 2024.11.15 ·
983 阅读 ·
20 点赞 ·
0 评论 ·
12 收藏

海山数据库(He3DB)源码解读:2PC

两阶段提交(2PC)是一种用于分布式系统的事务处理协议,旨在确保事务的原子性。以下是2PC从事务准备到提交或放弃的执行流程图:开始:事务发起者(协调者)开始一个新的分布式事务。事务发起者请求所有参与者准备:协调者向所有参与者发送准备请求,询问它们是否准备好提交事务。所有参与者是否准备好?:这是一个决策点,需要等待所有参与者的响应。是:如果所有参与者都准备好了,协调者将发送提交请求。否:如果任何一个参与者没有准备好,协调者将发送放弃请求。事务发起者发送提交请求。
原创
发布博客 2024.11.15 ·
675 阅读 ·
14 点赞 ·
0 评论 ·
15 收藏

大云海山数据库(He3DB)源码详解:主备复制-流复制

在数据库中,是一种数据库复制技术,它允许一主多从的数据库集簇实现实时数据复制和同步。周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师。
原创
发布博客 2024.11.15 ·
853 阅读 ·
16 点赞 ·
0 评论 ·
9 收藏

海山数据库(He3DB)源码详解:子事务块内核函数执行过程

本文介绍了子事务执行过程中,从SAVEPOINT定义子事务开始到子事务结束释放RELEASE或者回滚ROLLBACK To的内核函数执行过程。
原创
发布博客 2024.11.08 ·
703 阅读 ·
10 点赞 ·
0 评论 ·
8 收藏

海山数据库(He3DB)源码详解:事务块执行过程及内核函数

事务SQL语句的执行过程,会先通过事务块函数修改事务块状态,然后根据事务块状态执行不同的事务行为。因此,本章会讲解事务块的开始和结束过程的事务块函数。
原创
发布博客 2024.11.08 ·
886 阅读 ·
8 点赞 ·
0 评论 ·
23 收藏

海山数据库(He3DB)源码详解:两阶段提交(2PC)事务块内核函数执行过程

两阶段提交(2PC)是一种用于分布式系统的事务处理协议,旨在确保事务的原子性。graph TDA[开始] --> B[事务发起者请求所有参与者准备]B --> C{所有参与者是否准备好?C -- 是 --> D[事务发起者发送提交请求]C -- 否 --> E[事务发起者发送放弃请求]D --> F{所有参与者是否同意提交?F -- 是 --> G[所有参与者提交事务]F -- 否 --> H[所有参与者放弃事务]E --> I[所有参与者放弃事务]G --> J[事务提交完成]
原创
发布博客 2024.11.08 ·
883 阅读 ·
21 点赞 ·
0 评论 ·
26 收藏

海山数据库(He3DB)源码解读:T_GrantRoleStmt原理浅析

(一)  GrantRoleStmt 是一个结构体,用于在 PostgreSQL 中表示授予或撤销角色的语句。类型: NodeTag解释: NodeTag 是一个枚举类型,表示不同类型的节点。在这里,type 用于标识这是一个 GrantRoleStmt 节点。通常,type 的值为 T_GrantRoleStmt。类型: List *解释: 这是一个链表(List),包含了将被授予或撤销的角色列表。每个元素是一个角色名称或角色标识符。这个变量指定了要操作的角色。
原创
发布博客 2024.11.08 ·
518 阅读 ·
30 点赞 ·
0 评论 ·
26 收藏

海山数据库(He3DB)源码解读:T_CreateRoleStmt原理浅析

(一)  CreateRoleStmt 是 He3DB 中用于表示创建角色 (CREATE ROLE) 语句的结构体。它包含了与角色创建相关的各种信息,包括角色类型、角色名称和角色选项。NodeTag type 这个成员用于标识结构体的类型。在 He3DB 的抽象语法树 (AST) 中,每个节点都有一个类型标识符(NodeTag),用于区分不同类型的节点。CreateRoleStmt 会被标记为其特定的类型,以便在AST中进行正确的处理。ROLESTMT_ROLE,//表示一般的角色声明。
原创
发布博客 2024.11.08 ·
926 阅读 ·
24 点赞 ·
0 评论 ·
24 收藏

海山数据库(He3DB)源码解读:T_AlterRoleStmt原理浅析

(一)  AlterRoleStmt 是一个用于定义 He3DB 中 ALTER ROLE 命令语法的数据结构。它是一个结构体,包含了执行 ALTER ROLE 操作所需的所有信息。/* role */NodeTag type: 这是一个枚举类型,用于标识该结构体是哪种节点类型。NodeTag 通常用于区分不同的 SQL 语句类型。RoleSpec *role: 这是一个指向 RoleSpec 结构体的指针,表示要修改的角色。RoleSpec 结构体可能包含角色的名称或其他标识信息。
原创
发布博客 2024.11.08 ·
708 阅读 ·
11 点赞 ·
0 评论 ·
21 收藏

海山数据库(He3DB)源码详解:海山MySQL redo日志(1)

redo日志即重做日志,记录了事务对数据库做了哪些修改。当发生数据库服务器宕机、或者脏页未写入磁盘,可以通过redo日志恢复。
原创
发布博客 2024.10.21 ·
909 阅读 ·
27 点赞 ·
0 评论 ·
19 收藏

海山数据库(He3DB)源码详解:主备复制stop过程

周雨慧 中移(苏州)软件技术有限公司 数据库内核开发工程师。
原创
发布博客 2024.10.21 ·
997 阅读 ·
15 点赞 ·
0 评论 ·
21 收藏
加载更多