可使用 git 操作的数据库 dolt

可使用 git 操作的数据库 dolt什么是dolt?Dolt是一个SQL数据库,您可以像git存储库一样分叉、克隆、分支、合并、推送和拉取。像任何MySQL数据库一样连接到Dolt以使用SQL命令运行查询或更新数据,使用Golang语言编写。它与MySQL关系型数据库一样,具有表、视图等概念,支持数据的增删改查等操作。并且它提供了一个命令行工具,完美支持所有的git命令。…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

什么是 dolt?

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

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

8cf5f5502ffba95b275377f20e1c9f12.png

快速使用

  • 安装最新版 polt

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

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

Jetbrains全家桶1年46,售后保障稳定

  • 配置 dolt

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

dolt config --global --add user.email YOU@DOMAIN.COM
dolt config --global --add user.name "YOUR NAME"
image-20220718105123725

8bb69a070313c7c5dca50e340d641be1.png

  • 设置数据存储目录

mkdir -p test/dolt
cd test/dolt
  • 启动 sql-server 服务

dolt sql-server

1c5b97e12c0789f28bcf3fe153ef89c6.png

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

72ef7c9e24ee409942faface4f759382.png

  • 提交初始化表

call dolt_add('employees');
call dolt_commit('-m', 'Created initial schema');
image-20220718111434369

794f9e38ed13adf22e9d1e12ff75ee6c.png

  • 插入数据并查看表状态

insert into employees values 
    (0, 'Sehn', 'Tim'), 
    (1, 'Hendriks', 'Brian'), 
    (2, 'Son','Aaron'), 
    (3, 'Fitzgerald', 'Brian');
select * from dolt_status;

a02181251e76cf02d50c20cd09bfd3d4.png

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

d957ca6783b8c979def8460c2dc3ed4a.png

  • 对数据进行 reset 操作

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

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

375604a62702a607ff3ee39fc2f13c6f.png

总结

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

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


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

a0fe803b2f45e84c6a7db207da72e804.png

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

7b167d1ffc0fd623b63959fc09f2e417.png

记得分享、在看与点赞哦~

82fbc660afd8b0c45e2774585ca3ea3a.gif

8b718d9dc285d3a0ca995c3073d6e772.gif

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/200644.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号