可使用 git 操作的数据库 dolt

Dolt是一个结合了git特性的SQL数据库,允许用户进行分叉、克隆、分支、合并等操作。它既支持SQL查询,又具备git的版本控制功能。文章介绍了Dolt的安装、配置、使用方法,包括创建数据库、表,提交和回滚数据等操作,展示了一种创新的数据库管理方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

可使用 git 操作的数据库 dolt

什么是 dolt?

Dolt 是一个 SQL 数据库,您可以像 git 存储库一样分叉、克隆、分支、合并、推送和拉取。像任何 MySQL 数据库一样连接到 Dolt 以使用 SQL 命令运行查询或更新数据,使用 Golang 语言编写。

它与 MySQL 关系型数据库一样,具有表、视图等概念,支持数据的增删改查等操作。并且它提供了一个命令行工具,完美支持所有的 git 命令。

alt

快速使用

  • 安装最新版 polt

或者下载二进制,并加入到 PATH 中

sudo bash -c 'curl -L https://github.com/dolthub/dolt/releases/latest/download/install.sh | bash'
  • 配置 dolt

配置用户名和邮箱,与 git 配置类似

dolt config --global --add user.email YOU@DOMAIN.COM
dolt config --global --add user.name "YOUR NAME"
image-20220718105123725
alt
  • 设置数据存储目录
mkdir -p test/dolt
cd test/dolt
  • 启动 sql-server 服务
dolt sql-server
alt
  • 使用 sql-client 连接到 sql 服务

NOTICE: Dolt 同样支持任何与 MySQL 兼容的客户端,Dolt 也附带一个客户端。

dolt sql-client
  • 创建数据库以及表
create database getting_started;
use getting_started;
create table employees (
    id int, 
    last_name varchar(255), 
    first_name varchar(255), 
    primary key(id));
image-20220718111113870
alt
  • 提交初始化表
call dolt_add('employees');
call dolt_commit('-m''Created initial schema');
image-20220718111434369
alt
  • 插入数据并查看表状态
insert into employees values 
    (0, 'Sehn''Tim'), 
    (1, 'Hendriks''Brian'), 
    (2, 'Son','Aaron'), 
    (3, 'Fitzgerald''Brian');
select * from dolt_status;
alt
  • 提交插入的数据并查看表状态
alt
  • 对数据进行 reset 操作

模拟回滚的操作,如不小心把表删掉了,导致数据全部丢失,此时可以使用 reset 回滚数据。

drop table employees;
call dolt_reset('--hard');
alt

总结

结合 mysql 与 git 的特性,dolt 可谓是想法新奇,提供了未来数据库的新思路。

参考链接

2022 GopherChina大会报名仍在火热进行中!Gopher们扫描下方二维码即可报名参与,还等什么!

alt

大会合作、现场招聘及企业购票等事宜请联系微信:18516100522

alt

本文由 mdnice 多平台发布

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值