MySQL是当今最受欢迎的关系型数据库。使用图形客户端(GUI)工具,可以大大帮助开发者提升SQL编写与SQL开发的效率。在云时代,企业越来越多的开始采用RDS MySQL,同时也还有部分本地IDC自建数据库,而在云端也会选择/尝试多个不同云厂商。“工欲善其事,必先利其器”,在这样的背景下,看看有哪些工具产品可供选择吧。
本文完整对比了12种MySQL图形客户端(GUI)工具,从产品体验、功能完整度、云适配、计费模式、OS兼容性等多个角度进行评估与分析,给出推荐。下面产品推荐与整体得分图,读者可根据自己的实际情况选择。
NineData:
是一款非常有特色的数据库SQL开发产品,对MySQL常用功能支持非常完整,包括智能的SQL补全、SQL执行历史、结果集编辑、数据对比、结构对比、数据迁移与复制等。它采用SaaS架构模式,用户不仅可以免费使用,而且无需下载安装,上手比较简单。NineData产品更新迭代比较敏捷,对于开发者的新需求响应比较迅速。另外,该产品在多云适配上是其重要的强项,支持多种连接和访问云数据库的方式,对阿里云、腾讯云、华为云、AWS等都有比较好的支持。另外,也适配国内比较流行的PolarDB、GaussDB、TDSQL等数据库。对于新用户NineData还会赠送两个示例数据库,供用户使用。另外,NineData还提供了企业级SQL开发能力,支持多用户管理、数据库访问权限控制、变更流程、SQL规范、SQL与 *** 作审计等内容,可以较好的解决企业内多人协作访问数据库的问题。
Navicat:
是一款来自香港的产品,约2000年左右发布,是一个老牌的商业化、闭源数据库管理软件,支持主流的Windows、Mac OS X以及Linux,最近两年开始支持订阅模式,个人使用价格约35美元/月,企业版约69美元/月(参考),国内购买为273元/月,有一定的价格门槛,但其使用体验也还不错,功能也比较完整,包括比较强大的SQL补全、导入导出、结果集编辑、E-R模型、数据对比、结构对比、数据迁移等,但有部分功能仅企业版才具备。Navicat的代码块功能做得比较强,可以非常方便自定义一些自己常用的SQL模板。
Workbench:
是最老牌的数据库管理工具了。最早由奥地利程序员Michael G. Zinner独立开发,之后Zinner于2003年加入了MySQL AB公司,并于2005年发布了最早的Workbench 5.0版本;2013年发布了,6.0版本;2018年,发布了8.0版本。整体上,该产品依旧随着MySQL的版本而持续更新,但是,更新节奏较慢,界面也非常“老”,并没有受到Oracle/MySQL的重视。Workbench支持主流的Windows、Mac OS X以及Linux,并且开放源代码。但因为界面架构比较长时间没有更新,所以使用的交互体验一般。因为是MySQL官方工具,功能支持是比较完整的,包括SQL补全、SQL历史、导入导出、结果集编辑、E-R模型、数据对比、结构对比、数据迁移等功能都具备。另外,也提供商业化的企业版,支持部分MySQL企业版的功能。
DBeaver:
是一个基于 Java 开发数据库管理工具,提供开源免费的版本。因为是基于Java的,所以也能够支持Windows、Linux、macOS 等 *** 作系统,其支持的数据库类型也比较多。同时也是因为基于Java,其在访问的不同的数据库版本时,有时候需要在线做一些驱动更新,需要访问GitHub的一些资源,而因为一些原因,这类更新经常失败,使其使用体验有一定打折。DBeaver也提供了基础的SQL补全、导入导出、结果集编辑等功能,但也有部分功能仅限于企业版(Pro版本)才提供,另外,软件似乎因为比较大的缘故,所以运行起来有点慢。
phpMyAdmin:
这是另一个老牌的开源免费MySQL访问工具了,在云时代之前,开发者经常需要自己搭建自己完整的开发环境(例如“LAMP”)时,该软件还比较流行。从名字可以看出来,这是一个PHP的Web-Based的MySQL访问工具,所以需要使用并不是很方便,需要构建自己的Web服务器和PHP运行环境。一般来说,现在的开发者也并不会这么去做。另外,phpMyAdmin一直没有商业化,主要靠捐赠和赞助的方式在运转(参考,有意思的是Navicat也在赞助列表,而且是唯一的白金赞助商),整体上,phpMyAdmin其迭代速度非常慢,功能支持也很有限,但是如果是简单、基础的使用,是没有问题的。但,如果是日常开发使用,并不是很推荐。
dbForge:
dbForge是devart的核心产品,最早主要是支持SQL Server数据库,最近几年也发布了对MySQL数据库的支持,也是一个商业化收费软件,产品可以下载试用一段时间。根据使用经验来看,体验还是非常不错的,功能也非常完整。但是,仅支持Windows版本,标准版费用为199美元/年,起步价也并不便宜。
SQLYOG:
SQLyog更多的是专注于数据库的管理,包括性能、监控、优化等方面,也提供基础SQL编辑功能,所以在早期,其在DBA群体中比较受欢迎,但是在整体的开发者中,使用比率并不高。虽然,提供开源的社区版本,但是当前,公司主要在推广其商业版本。另外,在云时代对于监控与实例管理方面的诉求在降低,在SQL开发与云适配上需求更强。从这个角度来看,并不是很推荐这个这个产品。此外,该软件仅支持Windows系统。最近几年这个产品发展比较缓慢,而且SQL开发功能也不再是主推的功能,所以也并不是特别推荐。
HeidiSQL:
HeidiSQL也是一个发展了很长时间的MySQL客户端,使用Delphi构建,所以整体上,有非常好的Windows使用体验。但是不能支持macOS或者Linux。因为发展时间比较长,功能也比较完整。新增了部分对于云产品的适配,例如,如果类型选择的是AWS RDS,那么在kill连接的时候会使用特定的存储过程进行kill。
阿里云DMS:
因为阿里云在国内市占率非常高,所以,阿里云DMS也是一个使用比较广,但是也因为其为阿里云的产品,所以其作为MySQL管理工具并不是非常有名。DMS比较完整的支持MySQL日常SQL开发相关的工作,其功能矩阵也比较完整,可以完成日常的开发工作。DMS对于阿里云数据库的适配自然是非常好,使用也比较便利。但,其对于其他云数据库(诸如腾讯、华为、AWS)的支持就比较有限,而且似乎也并不会在这方面做任何的投入。另外,DMS最近一年的产品大方向主要是在于"一站式的数据管理",所以新增了数据资产、数据开发任务编排等功能。不再是一个SQL开发工具。
BeeKeeper Studio:
Beekeeper目前是由一个由个人开发的MySQL GUI软件。界面简洁现代,支持比较基础的SQL开发功能,包括了SQL窗口、创建表等能力,同时有非常好的平台兼容性。向用户提供免费的功能有限的社区版,完整版是收费的,最低价格为19美元。
DbVisualizer:
DbVisualizer发展时间也比较长了,支持的数据库种类也非常多,底层是基于Java构建的,有不错的平台兼容性,支持Windows / Linux / macOS,在市场也获得不错认可。不过,该软件仅支持英语,并没有对应的中文支持。
小结
通过Wine等方式支持的OS平台,这里并没有考虑,因为根据经验来看,大多数情况下,稳定性都不太好。另外,市面上也还有一些产品超过两年未更新,这里就不再介绍了,例如MyDB Studio;也有部分软件平台属性太强,例如Sequel Pro仅支持Mac,这里也没有介绍。总体上,打分有较强的主观性,所以仅供参考。
在MySQL日常运维工作中,经常会用到各种管理工具,这些工具属于mysql自带的管理工具,存储在mysql目录下的bin目录中,例如对象查看,备份,日志分析等,熟练使用是运维开发人员的必备工作,这些工具参数很多,这里介绍常用选项,更多详细可参考帮助文件。
在mysql工具集中,管理员使用最频繁的就是mysql命令了,它是连接数据库的客户端工具,类似oracle中的sqlplus,通过它可以进入mysql控制台界面。在大部分情况下,使用简单,命令语法如下:
常用选项:选项一般有两种表达方式,一种是"-"+选项单词缩写和选项值;另一种是“--”+选项的完整单词“=”选项实际值。例如我们连接数据库的两种命令如下:
myisampack是一个表压缩工具,它对MyISAM存储引擎表能进行高度压缩,可以很大的节省磁盘空间,但是压缩后的表只能读,不能写,不能进行DML *** 作,所以它的使用场景一般是归档 历史 数据。命令如下:
当对一个压缩表进行增加 *** 作时会报一个错误:ERROR 1036 Table is read only,但时对查询和统计时可以正常 *** 作的。
mysqladmin是一个对数据库进行管理 *** 作的客户端工具,可用来检查服务器是否可用、显示数据库版本号和状态,还可以直接新增一个数据库,也可对数据库进行关闭,功能和mysql类似,它的参数和mysql差异不大,命令如下:
它还可以修改root密码,命令如下
MySQL自带的mysqlbinlog工具的作用是解析二进制binlog的日志内容,把二进制数据还原成mysql可以执行的SQL语句。我有篇文章专门介绍该工具的使用,请具体参考:
传送门:mysql运维管理(七):使用Mysqlbinlog工具恢复增量数据
mysqlcheck工具可以用来检查和修复MyISAM存储引擎的表,还能做优化的工作,例如check、repair、analyze、optimize等等功能。具体命令如下:
注意,如果是innodb引擎的表,不能用上述优化工具。
mysqldump工具用来逻辑备份数据库,或者数据迁移。该工具是最常用的备份工具。
我有篇文章专门介绍该工具的使用,请具体参考:
传送门:mysql运维管理(五):掌握MySQLdump逻辑备份工具使用
它是数据导入工具,专门用来处理mysqldump 加-T选项后导出的文本文件,基本用法很简单,命令如下:
客户端对象查找工具,用来查找数据库,数据库的表,表中列或者索引,具体使用命令如下:
不加任何选项,默认显示所有数据库。
常用参数:
--count ,用来显示数据库和表的统计信息,不指定数据库的话,显示所有库信息
-k或者--keys,用来显示指定表中所有索引,例如查看employees库中employees表的索引信息,
在使用mysql使用过程中,会经常出现错误,错误信息都会带有一个编码,具体编码代表什么意思,就需要perror来查看。用法很简单:
举个例子,我们故意写错一个查询语句,例如:
现在有一个编码1054,我们可以用perror查看下
结果跟用工具显示的内容差不多,当然第三方工具也会显示错误信息。
本章做了一个常用工具的使用汇总,并举例说明了基本用法,熟练使用是每个运维人员必修内容,当然还有很多参数没有一一列举,可以参考相关帮助文档。
MySQL作为一种非常流行的关系型数据库,在信息系统开发中扮演着非常重要的角色,经常被用于后端数据存储,而MySQL本身又不提供非常便捷的客户端软件,因此出现了许许多多的第三方管理软件,下面我简单介绍几个,感兴趣的朋友可以自己下载尝试一下:
SQLyog这是一个非常轻巧灵活的MySQL客户端软件,界面整洁、干净友好,大部分开发人员都应该听说或使用过,可以直接查看数据库目录结构,建库建表灵活,支持SQL脚本导入导出、数据备份恢复等常见功能,语法高亮、自动补全等也都非常不错,对于日常MySQL管理来说,是一个非常不错的工具:
Navicat
这也是一个非常不错的MySQL客户端管理软件,界面简洁、功能强大,基本使用方式和SQLyog差不多,可以直接手动建库建表、设计视图(包括字段类型、主外键关系、触发器等),支持数据库建模、SQL脚本导入导出、数据恢复和备份等常见功能,对于MySQL管理来说,也是一个非常不错的工具:
Workbench
这是MySQL官方自带的一个客户端软件,可以直接到官网下载安装,免费、跨平台,专门为MySQL量身定制,兼容性良好,支持数据库建模(ER模型、前向和反向工程)、数据迁移(低版本到高版本)、恢复与备份等常见功能,对于MySQL日常管理来说,也是一个非常不错的工具:
phpMyAdmin
这是一个专门为php开发人员设计的MySQL管理工具,基于Web浏览器运行,界面干净、整洁友好,可以很方便的查阅管理日常数据库,建库建表也非常容易,如果你是一个专业的php开发人员,那么phpMyAdmin就是一个非常不错的管理工具,缺点就是在数据的备份和恢复上不是很方便:
DataGrip
这是一个比较全能的数据库客户端软件,支持目前几乎所有的主流数据库,包括MySQL,Oracle,SQL Server等,界面友好、干净整洁,日常查询、建库建表、建模设计、备份恢复、数据迁移等,这个软件都能很好支持,语法高亮、自动补全等功能也都非常不错,对于数据库管理来说,也是一个非常不错的工具:
当然,还有许多其他MySQL客户端管理软件,像HeidiSQL,DBeaver等也都非常不错,这里就不一一介绍了,基本功能和前面的这5个软件差不多,只要你熟悉一下使用方式,很快就能掌握的。至于哪个好,哪个更优秀,这个也没有什么明确标准,只要适合自己就行,如果你非常熟悉MySQL的话,也可以使用命令行工具,效果是一样的,网上也有相关资料,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。
MySQL的管理维护工具非常多,除了系统自带的命令行管理工具之外,还有许多其他的图形化管理工具,这里我介绍几个经常使用的MySQL图形化管理工具,供大家参考。
1、phpMyAdmin
phpMyAdmin是最常用的MySQL维护工具,是一个用PHP开发的基于Web方式架构在网站主机上的Mysql管理工具,支持中文,管理数据库非常方便。不足之处在于对大数据库的备份和恢复不方便。
2、MySQLDumper
MySQLDumper使用PHP开发的MySQL数据库备份恢复程序,解决了使用PHP进行大数据库备份和恢复的问题,数百兆的数据库都可以方便的备份恢复,不用担心网速太慢导致中间中断的问题,非常方便易用。
这个软件是德国人开发的,还没有中文语言包。
3、Navicat
Navicat是一个桌面版MySQL数据库管理和开发工具。和微软SQLServer的管理器很像,易学易用。
Navicat使用图形化的用户界面,可以让用户使用和管理更为轻松。支持中文,有免费版本提供。
4、MySQL GUI Tools
MySQL GUI Tools是MySQL官方提供的图形化管理工具,功能很强大,值得推荐,可惜的是没有中文界面。
5、MySQL ODBC Connector
MySQL官方提供的ODBC接口程序,系统安装了这个程序之后,就可以通过ODBC来访问MySQL,这样就可以实现SQLServer、Access和MySQL之间的数据转换,还可以支持ASP访问MySQL数据库。
6、MySQL Workbench
MySQL Workbench是一个统一的可视化开发和管理平台,该平台提供了许多高级工具,可支持数据库建模和设计、查询开发和测试、服务器配置和监视、用户和安全管理、备份和恢复自动化、审计数据检查以及向导驱动的数据库迁移。
MySQL Workbench是MySQL AB发布的可视化的数据库设计软件,它的前身是 FabForce 公司的 DDesigner 4。
MySQL Workbench 为数据库管理员、程序开发者和系统规划师提供可视化设计、模型建立、以及数据库管理功能。
它包含了用于创建复杂的数据建模ER模型,正向和逆向数据库工程,也可以用于执行通常需要花费大量时间和需要的难以变更和管理的文档任务。MySQL工作台可在Windows,Linux和Mac上使用。
7、SQLyog
SQLyog 是一个易于使用的、快速而简洁的图形化管理MYSQL数据库的工具,它能够在任何地点有效地管理你的数据库。
SQLyog是业界著名的Webyog公司出品的一款简洁高效、功能强大的图形化MySQL数据库管理工具。使用SQLyog可以快速直观地让您从世界的任何角落通过网络来维护远端的MySQL数据库。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)