可使用 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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 内存调试MEMWATCH

    内存调试MEMWATCH
    内存调试-MEMWATCH
     
    MEMWATCH由JohanLindh编写,是一个开放源代码C语言内存错误检测工具,您可以自己下载它(请参阅本文后面部分的参考资料)。只要在代码中添加一个头文件并在gcc语句中定义了MEMWATCH之后,您就可以跟踪程序中的内存泄漏和错误了。MEMWATCH支持ANSIC,它提供结果日志纪录,能检测双重释放(double-free)、错误释放(erroneousfree)、没有释放的内存(unfreedmemo

    2022年7月15日
    10
  • jtl转换成html,Jmeter的jtl文件转换HTML报告[通俗易懂]

    jtl转换成html,Jmeter的jtl文件转换HTML报告[通俗易懂]Jmeter我们用做接口测试的时候使用可视化界面,可以通过查看结果树或者聚合报告来观看结果。但是,在工作中,这样的结果,往往也要成为你测试报告的一部分,傻的办法当然是截图,然后展示,这样的傻办法,我用了几次就不想再用,一次截图次数太多,让人看的眼花缭乱,不能很好的体现我们测试报告的准确性和说服力。做为一个,测试开发,就要来解决这样的问题,尽量把重复工作降低,提升工作效率。通过参考,我找到了Jmet…

    2022年10月29日
    0
  • c# 递归算法

    c# 递归算法c#题目如下:要求输出:1,2,3,5,8,13,21,34,55,89写法一:publicclassMyClass{ publicstaticvoidMain() { int[]cSu

    2022年7月3日
    28
  • GTA5快速进入线上模式

    GTA5快速进入线上模式话不多说,上资源:链接:https://pan.baidu.com/s/1oWE6L0J1s33R_2zfcxiG_A提取码:b9tf解压后,先启动GTA5,进入游戏菜单界面然后打开Xenos(32位)或者Xenos64(64位)将文件夹下的GTAO_Booster.dll拖动进列表框内Process选择GTAV.exe(每次启动游戏进程ID会有所不同)最后点击Add将加速模块注入近gtaji…

    2022年6月14日
    106
  • RC522 射频读卡器模块(MINI型)

    RC522 射频读卡器模块(MINI型)一、硬件:二、[主芯片介绍]MFRC522是应用于13.56MHz非接触式通信中高集成度的读写卡芯片,是NXP公司针对“三表”应用推出的一款低电压、低成本、体积小的非接触式读写卡芯片,是智能仪表

    2022年7月1日
    36
  • 纯css3手机页面图标样式代码

    全部图标:http://hovertree.com/texiao/css/19/先看效果:或者点这里:http://hovertree.com/texiao/css/19/hoverkico.htm简

    2021年12月21日
    48

发表回复

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

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