乐趣区

关于程序员:可使用-git-操作的数据库-dolt

可应用 git 操作的数据库 dolt

什么是 dolt?

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

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

疾速应用

  • 装置最新版 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
  • 设置数据存储目录
mkdir -p test/dolt
cd test/dolt
  • 启动 sql-server 服务
dolt sql-server
  • 应用 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
  • 提交初始化表
call dolt_add('employees');
call dolt_commit('-m', 'Created initial schema');
image-20220718111434369
  • 插入数据并查看表状态
insert into employees values 
    (0, 'Sehn', 'Tim'), 
    (1, 'Hendriks', 'Brian'), 
    (2, 'Son','Aaron'), 
    (3, 'Fitzgerald', 'Brian');
select * from dolt_status;
  • 提交插入的数据并查看表状态
  • 对数据进行 reset 操作

    模仿回滚的操作,如不小心把表删掉了,导致数据全副失落,此时能够应用 reset 回滚数据。

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

总结

联合 mysql 与 git 的个性,dolt 堪称是想法离奇,提供了将来数据库的新思路。

参考链接
  • https://github.com/dolthub/dolt

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

大会单干、现场招聘及企业购票等事宜请分割 微信:18516100522

本文由 mdnice 多平台公布

退出移动版