项目起因2021 年,我在面试中多次被问到数据库内核相关问题,比如 “MySQL 是如何做性能优化的?”、“InnoDB 的 MVCC 怎么实现?”。
那时我发现,虽然平时用 MySQL 很多,但对它底层协议、存储引擎、事务机制,其实了解不深。
那段时间我也刚学 Go,想真正把它用在系统编程里。
于是我给自己定了个挑战:用纯 Go 从零写一个 MySQL 兼容数据库内核,目标对齐 MySQL 5.7 协议,参考 InnoDB 的设计,支持事务、MVCC、Redo/Undo 日志…。
{dede:pagebreak/}
陌生人晕倒了,帮他拨打120后,病人不支付120出车费,这个费用谁来承担?
有什么是虚拟机代替不了物理机的?
ssd固态硬盘sata的好还是m.2好呢?
怎么实现一个简单的数据库系统?
有哪些支持.Net系语言的开源中间件?
为什么腰肌劳损这么难治?
男朋友说我穿衣服太开放,难道好身材不应该显示出来吗?
养鱼你踩的最大的坑是什么?
世界上存在动漫少女般完美的「身体」吗?
男朋友说我穿衣服太开放,难道好身材不应该显示出来吗?
有哪些新生代没见过或者无法理解的 Red Hat Linux 9 时代的事情?
为什么现在的年轻人负债的越来越多?
如何搭建自己CDN服务器?
大厂后端开发需要掌握docker和k8s吗?
既然紫色不好染,古人能不能用红线做经线,蓝线做纬线,纺织出紫色的布料?
为什么台式 PC 还处在组装(DIY)阶段?