工欲善其事,必先利其器,面对五花八门的MySQL客户端,开发者该如何选择,今天我整理了12种MySQL开发工具,从产品体验,功能完整度,云适配,计费模式,OS先容性等多个角度进行评估与分析,大家可根据自己的实际情况选择,
一款安全高效的多数据库管理与开发工具
SQL Studio是一个非常有特色的数据库产品,它对数据库常用的功能非常完整,包括SQL历史查询、导入导出、自动生成测试数据、自动生成SQL语句、数据对比等。它是Web版本,个人版本永久免费,且无需下载安装,上手比较简单。
SQL Studio可连接多个数据源,同时很好地支持国产数据库。
SQL Studio还提供了企业级开发功能,支持多用户管理、数据库访问、权限管控、变更流程、SQL规范与操作审计等内容,可以较好的解决企业级协作访问数据库的问题。
Navicat的主要卖点是全面强大的功能,易于使用,支持主流数据库,跨平台,有活跃的技术社区等。这使其成为目前数据库开发和管理的首选工具之一。
navicat的功能比较完整,主要有:强大的SQL补全、数据对比、导入导出、结构对比、结果集编辑、数据迁移、E-R模型等,但也有部分功能仅企业版才具备。
Wolkbench是最老牌的数据库管理工具了,最早由奥地利程序员Michael G. Zinner独立开发,之后Zinner于2003年加入了MySQL AB公司,并于2005年发布了最早的Wolkbench5.0版本,2013年发布了6.0版本,2018年发布了8.0版本,整体上该产品依旧随着MySQL的版本而持续更新,但是更新节奏较慢,界面也非常老,并没有受到Oracle MySQL的影响。
Wolkbench支持主流的Windows、Mac 以及Linux,并且开放源代码,但因为界面架构比较长时间没有更新,所以使用的交互体验一般,因为是MySQL官方工具,功能支持是比较完整的。
另外,也提供商业化的企业版,支持部分MySQL企业版的功能。
DBeaver是一个基于Java开发数据库管理工具,提供开源免费的版本,因为是基于Java的,所以也能够支持Windows Linux、Mac OS等操作系统,其支持的数据库类型也比较多,同时也是因为基于Java,其在访问的不同的数据库版本时,有时候需要在线做一些驱动更新,需要访问GitHub的一些资源,而因为一些原因,这类更新经常失败,使其无法更新。
其使用体验有一定打折,DBeaver也提供了基础的SQL补全、导入导出、结果及编辑等功能,但也有部分功能仅限于企业版、Pro版本才提供。另外,软件似乎因为比较大的缘故,所以运行起来有点慢。
PHPMyAdmin,这是另一个老牌的开源免费MySQL访问工具了,在云时代之前,开发者经常需要自己搭建自己完整的开发环境,例如Lab10,该软件还比较流行,从名字可以看出来,这是一个PHP的Web-based的MySQL访问工具,所以需要使用并不是很方便,需要构建自己的Web服务器和PHP运行环境,一般来说,现在的开发者应该不需要。
开发者也并不会这么去做,另外phpmyadmin一直没有商业化,主要靠捐赠和赞助的方式在运转,有意思的是nevicat也在赞助列表,而且是唯一的白金赞助商,整体上phpmyadmin其迭代速度非常慢,功能支持也很有限,但是如果是简单基础的使用是没有问题的,但如果是日常开发使用并不是很推荐
dbforge是deva rt的核心产品,最早主要是支持sql server数据库,最近几年也发布了对mysql数据库的支持,也是一个商业化收费软件,产品可以下载试用一段时间,根据使用经验来看,体验还是非常不错的,功能也非常完整,但是仅支持windows版本,标准版费用为199美元每年,起步价也并不便宜。
SQLyog更多的是专注于数据库的管理,包括性能监控优化等方面,也提供基础sql编辑功能。
所以在早期其在DBA群体中比较受欢迎,但是在整体的开发者中使用比率并不高,虽然提供开源的社区版本,但是当前公司主要在推广其商业版本,另外在云时代对于监控与实力管理,方面的诉求在降低,在sql开发语云适配上需求更强,从这个角度来看,并不是很推荐这个产品,此外该软件仅支持windows系统,最近几年产品发展比较缓慢,而且sql开发功能也不再是主推的功能,所以也并不是特别推荐
HeidiSQL也是一个发展了很长时间的mysql客户端,使用Delphi构建,所以整体上有非常好的windows使用体验,但是不能支持mac或者linux,因为发展时间比较长,功能也比较完整,新增了部分对于云产品的适配,例如如 果类型选择的是AWS、RDS,那么在kill连接的时候,会使用特定的存储过程进行kill
Toad Edge是Quest公司的产品之一,主要支持mysql和postgreSQL,当然toad系列也有支持oracle dbr,sql server等商业数据库,但都需要下载独立的软件,另外该软件一般是通过销售渠道去销售的,所以网上也看不到其价格,当前支持windows和mac os版本,其功能支持也比较完整,另外在sql提示功能上比较有特色,支持比较常见的sql代码提示
DbVisualizer发展时间也比较长了,支持的数据库种类也非常多,底层是基于java构建的,有不错的平台兼容性,支持windows linux,mac os在市场也获得不错认可,不过该软件仅支持英语,并没有对应的中文支持,通过wine等方式支持的os平台
总体来说,不同的产品各有特色,开发者可以根据自己的实际需求选择合适的MySQL客户端工具。无论是功能、体验、云适配还是价格,都有较大差异。所以在选择的时候,一定要根据自身的实际情况进行综合判断,不要过于追求单一指标。