可使用 git 操作的数据库 dolt

可使用 git 操作的数据库 dolt

什么是 dolt?

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

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

可使用 git 操作的数据库 dolt_第1张图片

快速使用

  • 安装最新版 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 [email protected]
dolt config --global --add user.name "YOUR NAME"
image-20220718105123725

可使用 git 操作的数据库 dolt_第2张图片

  • 设置数据存储目录
mkdir -p test/dolt
cd test/dolt
  • 启动 sql-server 服务
dolt sql-server

可使用 git 操作的数据库 dolt_第3张图片

  • 使用 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

可使用 git 操作的数据库 dolt_第4张图片

  • 提交初始化表
call dolt_add('employees');
call dolt_commit('-m', 'Created initial schema');
image-20220718111434369

可使用 git 操作的数据库 dolt_第5张图片

  • 插入数据并查看表状态
insert into employees values 
    (0, 'Sehn', 'Tim'), 
    (1, 'Hendriks', 'Brian'), 
    (2, 'Son','Aaron'), 
    (3, 'Fitzgerald', 'Brian');
select * from dolt_status;

可使用 git 操作的数据库 dolt_第6张图片

  • 提交插入的数据并查看表状态

可使用 git 操作的数据库 dolt_第7张图片

  • 对数据进行 reset 操作

    模拟回滚的操作,如不小心把表删掉了,导致数据全部丢失,此时可以使用 reset 回滚数据。
    drop table employees;
    call dolt_reset('--hard');

可使用 git 操作的数据库 dolt_第8张图片

总结

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

参考链接

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

 title=

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

本文由mdnice多平台发布

你可能感兴趣的:(程序员)