推荐一款免费的好用的数据库客户端 sqlzero - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
javahuang
V2EX    分享创造

推荐一款免费的好用的数据库客户端 sqlzero

  •  
  •   javahuang 2021-02-17 23:15:34 +08:00 5996 次点击
    这是一个创建于 1702 天前的主题,其中的信息可能已经有所发展或是发生改变。

    sqlzero

    支持特性

    • 支持多个数据源,目前已适配 mysql,后续会陆续适配任何支持 jdbc 的数据库
    • 因为是 bs 版的,支持服务端部署,支持账号注册,团队伙伴可以将服务单独部署,支持不同账号权限隔离
    • 支持显示 schema,包含表、视图(后续支持其他),可以显示主键、索引、注释、数据类型
    • 支持数据库连接池,支持多个标签页,每个标签页可以单独开启一个数据库连接
    • 支持 ddl 、多个结果集查询、查询选中、sql 格式化
    • 支持选中运行 sql 、直接运行单个 sql 、运行整个页面 sql
    • 支持分页,自定义分页信息,支持大的结果集展示,实测百万数据显示很平滑
    • 支持右键对结果集排序、筛选、过滤功能
    • 支持单条记录视图模式
    • sql 编辑器支持自动补全,自动补全体验目前比 datagrip 差一丢丢(此处狗头)
    • 支持代码片,比如输入 sel,自动出现 select * from xx,未来也可支持自定义代码片
    • 支持保存查询结果,可以将结果集页面和其他功能模块集成
    • 支持导出结果集,支持导出多个结果集标签到 excel 的多个 sheet,可自定义标签名称(等于 sheet 名称)
    • 提供强大的结果集编辑功能,支持直接在结果集单元格编辑数据,支持新增、修改、删除,并以很友好的方式来标记颜色
    • 支持 tableplus 的方式,使用 ctrl+s/ctrl+z 来提交 /回滚编辑的数据
    • 支持事务的手动提交和自动提交,多个查询结果标签页,支持选中单元格,显示该字段的信息(数据类型、非空信息、注释)
    • 支持 ctrl+表名打开表编辑页面
    • 所有窗口都是响应式的,并且可以打开关闭
    • 支持可视化建表
    • 永远相信美好的事情即将发生(再次狗头)
    • ...

    如何安装

    由于是使用 java 开发的,需要依赖 jre 环境,以可执行 jar 包的方式提供安装包,内置 mysql 数据库驱动目前安装包只有 29M 大小,运行时占用内存可以自己控制,目前我本机测试数据库可以控制在 100M 之内。

    安装非常简单,windows/mac 环境双击直接启动,linux 环境直接 nohup 启动,浏览器访问 http://127.0.0.1:9001 (也可自定义端口)即可运行。

    无需其他任何设置。

    # 直接启动( mac/windows 下也可以直接双击运行) ./sqlzero-0.0.1.jar # 运行 http://youipaddress:9001/ 

    sqlzero git 地址

    第 1 条附言    2021-02-18 13:29:59 +08:00
    • 登录注册

      signup

    • 创建连接

      create-connection

    • sql 查询,自动补全

      query

    • 数据编辑

      edit-data

    • 单行记录视图编辑

      inline-edit

    • 多个 tab 结果页

      multi-tab

    • 结果集过滤

      filter-result

    • 事务支持

      transaction

    • 单元格选中信息显示

      cell-select

    • 响应式布局

      responsive-layout

    • 保存查询及跳转,查询历史

      save-query

    • 表设计(部分完成)双击表结果集查询

      schema-view

    • 暗黑主题

      dark-theme

    第 2 条附言    2021-02-20 14:16:15 +08:00
    已上传到 [dockerhub]( https://hub.docker.com/repository/docker/sqlzero/sqlzero), 可以直接通过 `docker run -p 9001:9001 sqlzero/sqlzero` 试用
    34 条回复    2021-02-24 23:05:33 +08:00
    irockytan
        1
    irockytan  
       2021-02-17 23:49:25 +08:00
    看起来不错,还没上传到 Github?
    imn1
        2
    imn1  
       2021-02-17 3:56:47 +08:00   1
    @Livid
    希望把本帖迁移到 分享创造 节点,不然将来不好找
    Mitt
        3
    Mitt  
       2021-02-18 00:10:49 +08:00   1
    只有个 README 可还行?
    learningman
        4
    learningman  
       2021-02-18 00:45:49 +08:00
    所以是不开源的意思?
    javahuang
        5
    javahuang  
    OP
       2021-02-18 08:55:11 +08:00
    @learningman 是的,暂不开源,先给功能做好做精,后期再看有没有其他可能。
    javahuang
        6
    javahuang  
    OP
       2021-02-18 09:09:10 +08:00
    @Mitt 一直在做功能,git 的账号和 repo 都是昨天晚上才创建的,想着年后上班给放出来,很多东西还没来得及准备,抱歉。
    yanue
        7
    yanue  
       2021-02-18 09:37:30 +08:00
    不是 datagrid?
    tellbin
        8
    tellbin  
       2021-02-18 09:55:13 +08:00
    所以只是介绍么?没有下载地址什么的么
    janxin
        9
    janxin  
       2021-02-18 09:56:18 +08:00
    @tellbin 文章最后
    tellbin
        10
    tellbin  
       2021-02-18 10:02:52 +08:00
    @janxin 那个是 github,里面只有 readme 和一张图,也没有 releases
    janxin
        11
    janxin  
       2021-02-18 10:04:27 +08:00
    @tellbin 啊这...没点进去看,还以为里面有下载的
    ao99
        12
    ao99  
       2021-02-18 10:09:24 +08:00
    看起来很好用,但是没看到下载地址
    matrix67
        13
    matrix67  
       2021-02-18 10:09:28 +08:00
    @tellbin #10 浪费人生 2 分钟啊!!! 看了一通介绍 ,只有 readme 和一张图,也没有 releases!!!

    zifangsky
        14
    zifangsky  
       2021-02-18 10:28:35 +08:00
    说了一大堆,不开源也就罢了,连一个试用地址都没有,这不是浪费大家时间吗!!!
    tellbin
        15
    tellbin  
       2021-02-18 10:40:27 +08:00
    作者的另外一个帖子[《开发了一个数据库客户端,准备放出来》]( t/742032)
    javahuang
        16
    javahuang  
    OP
       2021-02-18 10:43:32 +08:00
    @zifangsky 抱歉,我今天放出来,本来准备早上放的,上午临时接到一些工作上的需求,写这个软件时间都是一点点挤出来的。
    javahuang
        17
    javahuang  
    OP
       2021-02-18 10:47:28 +08:00
    @tellbin 上面这个还是一个月前放的版本,还没来得及更新,今天抽时间更了,抱歉。
    tellbin
        18
    tellbin  
       2021-02-18 10:52:07 +08:00
    @javahuang 理解
    javahuang
        19
    javahuang  
    OP
       2021-02-18 11:25:14 +08:00
    @tellbin @matrix67 @zifangsky github 上面已经放了 release 了
    tellbin
        20
    tellbin  
       2021-02-18 11:28:07 +08:00
    @javahuang 方便说下前端技术栈么?我这边看了你上个月的版本只能判断出前后分离版本、monaco 编辑器。UI 是没有用框架自己画的么?
    javahuang
        21
    javahuang  
    OP
       2021-02-18 11:37:14 +08:00
    @tellbin ts+react,ui 库主要用的是 blueprintjs,我前端不是很精,布局啥的 flex 一把梭
    tellbin
        22
    tellbin  
       2021-02-18 11:39:51 +08:00
    @javahuang 好的,感谢
    sirius1024
        23
    sirius1024  
       2021-02-18 12:24:14 +08:00
    还是 dbeaver 吧……
    mengdodo
        24
    mengdodo  
       2021-02-18 13:49:35 +08:00
    上来就注册登录的吗
    l00t
        25
    l00t  
       2021-02-18 14:00:53 +08:00
    Java 开发的?告辞。
    ciqulover
        26
    ciqulover  
       2021-02-18 14:01:14 +08:00 via iPhone
    sequel ace, tableplus 不香嘛,数据库工具不开源谁敢用
    kikyous
        27
    kikyous  
       2021-02-18 14:19:41 +08:00 via Android
    @ciqulover 你这发言真有点迷惑,tableplus 就不是开源的啊
    ciqulover
        28
    ciqulover  
       2021-02-18 14:29:55 +08:00 via iPhone
    @kikyous 成熟的商业项目能和个人项目谈信任度嘛?
    javahuang
        29
    javahuang  
    OP
       2021-02-18 15:15:29 +08:00
    @mengdodo 因为是 bs 版的,支持多个用户权限隔离,所以加了注册功能,后续会加上单机模式免登陆之类的。
    javahuang
        30
    javahuang  
    OP
       2021-02-18 15:18:04 +08:00
    @l00t 是的,前后端分离的,后端是 java,启动快,占用内存低。datagrip,dbeaver 也是 java 开发的,但是占用内存比他们低多了。
    javahuang
        31
    javahuang  
    OP
       2021-02-18 15:32:12 +08:00   1
    @ciqulover 开源的我目前没发现有好用的,好用的( tableplus/datagrip/navicat...)基本都不开源且价格都不便宜。如果您觉得个人开发不能谈信任度,后续我可以给后端代码优先开源出来(而且现在代码我也没有混淆加密,反编译阅读起来也不难)。成熟的商业项目也是一点点发展起来的,我也知道这个很大可能不会得到大家的认可,但目前最少方便了我和我的团队,这玩意花了我三个半月的全部零碎时间,不想放弃了,以后不知道怎么样呢。
    laycher
        32
    laycher  
       2021-02-22 11:18:24 +08:00
    dbeaver 我觉得很不错啊。
    Norths
        33
    Norths  
       2021-02-22 19:04:58 +08:00
    看着还不错,最近 Navicat 用厌了想折腾点别的,关注一波
    javahuang
        34
    javahuang  
    OP
       2021-02-24 23:05:33 +08:00
    @laycher 是的,有段时间我也挺喜欢用 dbeaver 的。
    但 dbeaver 很多方面表现很差,举个例子,我实测单表查询 20 万条数据,整个查询过程中 dbeaver 不断发现未响应,最终内存大概增加了 400M,然后 filter 结果集(比如列排序 /字段过滤)的时候直接崩了,而 sqlzero 内存大概只增加了 25M,渲染快,结果集过滤也非常快。
    一个 sql 工具,我觉得比较重要的几个方面,智能提示,结果集展示,数据编辑,schema 编辑。这几点目前我觉得和 dbeaver 相比不比他差,某些方面体验我个人觉得比 dbeaver 好很多。
    当然,dbeaver 功能很多,sqlzero 从我提交第一行代码到现在也只有三个多月的时间,我最开始的目标也是尽可能实现常用功能,现在我觉得已经超出预期了,所以放出来给有需要的人使用。

    顺便贴两个动图,对比下 dbeaver 和 sqlzero
    ![sqlzero]( https://raw.githubusercontent.com/sqlzero/sqlzero/master/assets/13-large-zero-vs-dbeaver.gif)

    ![dbeaver]( https://raw.githubusercontent.com/sqlzero/sqlzero/master/assets/13-large-dbeaver-vs-zero.gif)
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3517 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 35ms UTC 10:19 PVG 18:19 LAX 03:19 JFK 06:19
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86