项目简介
MiniOB是OceanBase与华中科技大学联合开发的数据库入门实践工具,主要面向在校学生。它通过简化诸多模块(如不考虑并发操作),让初学者能快速了解数据库并深入学习数据库内核。经过相关训练,使用者能了解数据库内核各模块功能及其关联,在使用数据库时设计出高效的SQL。
项目的主要特性和功能
- 数据库内核学习工具:助力学生了解数据库内核各模块,涵盖存储管理、查询优化、事务处理等。
- SQL解析与执行:支持SELECT、INSERT、UPDATE、DELETE等基本SQL语句的解析与执行。
- 配置文件处理:可解析INI格式的配置文件,实现配置信息的读写。
- 文件操作:提供文件读写、获取文件大小及文件列表等功能。
- 日志系统:能生成、存储和旋转日志。
- 内存管理:采用内存池管理,提升内存分配和释放效率,减少碎片。
- 多线程安全:利用互斥锁等机制保障多线程环境下的数据安全。
- 性能指标监控:支持收集和报告性能指标,方便开发者监控系统性能。
- 单元测试:提供丰富的单元测试用例,确保各模块功能正确。
安装使用步骤
1. 环境准备
- 确保系统安装C++编译器(如GCC或Clang)。
- 安装必要依赖库,如libevent、Google Test等。
2. 进入项目目录
bash
cd miniob
3. 编译项目
使用CMake进行编译:
bash
mkdir build
cd build
cmake ..
make
4. 运行测试
编译完成后,运行单元测试:
bash
./unitest/run_tests
5. 启动数据库
bash
./src/observer/main
6. 使用客户端连接
使用客户端程序连接数据库并执行SQL语句:
bash
./src/obclient/client
7. 配置文件
可通过INI格式的配置文件调整数据库行为,按需设置配置文件路径和内容。
8. 日志查看
通过查看日志文件监控数据库运行状态。
9. 性能监控
利用性能指标监控功能实时查看数据库性能数据,进行性能优化。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】