- PostgreSQL是世界上第四大流行的开源数据库管理系统,它在各种规模的应用程序中得到了广泛的使用。而管理数据库的传统方法是使用命令行界面(CLI)工具。不过,此类方法存在着如下问题:需要花费大量的学习时间,才能充分掌握DBMS。
- 控制台的显示并不友好,并且单次只能提供少量的信息。
- 很难通过简单的控制台界面,来浏览、检查、索引、以及监视各种数据库与表。
相比之下,PostgreSQL的图形化用户界面(GUI)工具则可以帮助用户对数据库实现更好的管理、操纵、以及可视化其数据。具体包括如下五个方面:
- 既能够让新用户快速上手,又提供各种快捷键给熟练的用户。
- 出色的可视化效果,帮助用户了解其数据。
- 可以远程访问或导航至另一个数据库服务器上。
- 通过窗口界面来轻松地管理PostgreSQL的数据。
- 方便地访问各种文件、函数、以及操作系统。
可见,PostgreSQL GUI工具在给开发人员减负的同时,提高了他们的生产率。下面,我们将和您讨论五种用于管理PostgreSQL部署的GUI工具。
1. pgAdmin(https://www.pgadmin.org/)
pgAdmin是首款PostgreSQL GUI工具。它支持所有的PostgreSQL操作与功能,而且是免费且开源的。无论您是新手,还是经验丰富的DBA、或是开发人员,都可以通过pgAdmin来管理数据库。
优点:
- 可以对所有常见的PostgreSQL对象进行创建、查看和编辑。
- 提供具有语法高亮显示功能的图形化查询与计划任务。
- 其仪表板可以让您监视到包括:数据库锁、已连接的会话、就绪的事务在内的各项服务器活动。
- 由于pgAdmin是一个Web应用,因此您可以将其部署到任何服务器上,并远程访问它。
- pgAdmin UI提供各种可拆分的面板,您可以根据自己的喜好进行重排。
- 其程序语言调试器可以帮助您调试代码。
- pgAdmin的可移植版本,可以让用户轻松地在机器之间移动数据。
缺点:
- 与其他付费版GUI工具相比,其UI较为缓慢、且不直观。
- pgAdmin比较消耗系统资源。
pgAdmin可以被安装在Windows、Linux和Mac OS的本地进行使用。用户可以从pgAdmin的官网-- https://www.pgadmin.org/download/处下载,由于它是专为PostgreSQL设计的,因此其每个版本都会伴随着新功能的更新。
费用:免费(开源)
2. DBeaver(https://dbeaver.io/)
DBeaver是一款备受开发人员和数据库管理员喜欢的跨平台PostgreSQL GUI工具。虽然并非PostgreSQL的原生GUI,但是DBeaver支持所有流行的数据库,包括:MySQL、MariaDB、Sybase、SQLite、Oracle、SQL Server、DB2、MS Access、Firebird、Teradata、以及Derby。
优点:
- 可视化的查询构建器可以帮助您,在无需掌握过多SQL相关知识的情况下,构建出复杂的SQL查询。
- 可以使用多种数据视图,来支持不同的用户需求。
- 提供方便的数据导航。
- 在DBeaver中,您可以生成近似于真实的伪数据,以用于测试系统。
- 提供针对所有选定表和视图的全文数据搜索,能将搜索结果显示为已过滤的表和视图。
- 能够在各个数据库系统表中,进行行间元数据的搜索。
- 可导入、导出为CSV、HTML、XML、JSON、XLS、XLSX等多种文件格式的数据。
- 通过将密码存储在受主密码保护的存储区域中,以提高数据库的安全性。
- 能够自动为数据库及其机构模式生成ER图。
- 其企业版提供了特殊的在线支持系统。
缺点:
- 与一些昂贵的GUI工具(例如Navicat和DataGrip)相比,它在处理大型数据集时,可能会比较慢。
您可以在Windows、Linux和Mac OS上运行DBeaver。它具有免费和企业两个版本。您可以149美元的价格购买企业版的标准许可证。不过,对于大多数公司来说,免费版本已经足够了。而且,大多数DBeaver用户都觉得其免费版本优于pgAdmin。
费用:社区版本免费,标准企业版149美元
3. Navicat(https://www.navicat.com/en/products/navicat-for-postgresql)
Navicat是一种同时面向初学者和有经验人士的,易于使用的图形化工具。它支持诸如:MySQL、PostgreSQL和MongoDB等多种数据库系统。Navicat能够与Amazon Redshift、Amazon RDS、Amazon Aurora、Microsoft Azure、Google Cloud、腾讯云、阿里云、以及华为云等云端数据库协同工作。
优点:
- Navicat具有非常直观且快速的UI。您可以使用其可视化的SQL构建器,来轻松地创建和编辑SQL语句。同时,其强大的代码自动化完成功能,可以节省开发者大量的代码时间,并避免出错的可能。
- Navicat带有强大的数据建模工具,可被用于更改、甚至从头设计整个可视化的数据库结构。您可以通过其提供的图表,来直观地操作所有类型的数据库对象。
- Navicat可以运行各种计划任务,并在作业完成时及时地以邮件的形式通知管理员。
- Navicat能够同步不同的数据源与架构。
- Navicat的附加功能--Navicat Cloud,可以提供基于项目的团队协作。
- Navicat通过SSH隧道和SSL建立的连接,来确保每个连接都是安全、稳定且可靠的。
- 您可以将数据导入或导出为Excel、Access、CSV等多种格式。
缺点:
- 其许可证具有平台单一性。您需要针对PostgreSQL和MySQL购买不同的许可证。小公司或自由职业者可能无法承受此高昂的价格。
- 新手需要花费一段时间,来了解其丰富的功能。
您可以在Windows、Linux和Mac OS环境中使用Navicat。Navicat的知名客户群包括:Apple、Oracle、Google、Microsoft、Facebook、Disney和Adobe。Navicat提供了企业版、标准版和非商业版,三种版本。其中,企业版的价格为239美元,标准版的价格为159美元,非商业版的价格为89美元。您可以通过链接:https://www2.navicat.com/en/store/navicat-for-postgresql,来获悉其完整的价格信息,并可通过链接:https://www.navicat.com/en/download/navicat-for-postgresql,下载Navicat的14天试用版。
费用:单个许可证从89美元至239美元不等
4. DataGrip(http://jetbrains.com/datagrip/)
DataGrip是一款支持多个数据库环境的跨平台集成开发环境(IDE)。它是由大品牌JetBrains所开发的。该品牌的其他产品还包括:PhpStorm、IntelliJ IDEA、PyCharm、以及WebStorm,它们的IDE表现都十分出色。
优点:
- 其上下文感知和模式感知能力,能够促进代码的自动完成。
- 通过其美观且可自定义的用户界面,以及智能化查询的控制台,您可以跟踪各项活动,而不会丢失任何作业。同时,您也可以使用其强大的编辑器,来轻松地添加、删除、编辑和克隆数据。
- 采用多种方法来导航各种表、视图、以及过程。
- 能够及时检测出代码中的错误,并提供最佳的解决方案。
- DataGrip提供高级的重构过程。在重命名变量或对象时,它能够自动解析各种引用。
- 除了作为PostgreSQL的GUI工具,DataGrip还能为版本控制系统之类服务提供全方位的IDE。
缺点:
- 由于不是PostgreSQL的原生工具,因此它不太方便调试各种错误,也无法显示所有的错误。
- 其学习曲线较为“陡峭”,对于初学者的门槛较高。
- 比较消耗RAM的系统资源。
DataGrip支持包括:SQL Server、MySQL、Oracle、SQLite、Azure数据库、DB2、H2、MariaDB、Cassandra、HyperSQL、以及Apache Derby在内的各种大量数据库管理系统。DataGrip也支持Windows、Linux和Mac OS,三大主要操作系统。DataGrip为组织和个人提供了两种不同的定价。对于组织而言,可以参考:https://www.jetbrains.com/datagrip/buy/#commercial?billing=yearly,其首年的费用为199美元,次年为159美元,第三年及以后为119美元。其个人版的首年套餐价格为89美元。您可以通过链接:https://www.jetbrains.com/datagrip/download,下载其30天的免费试用版。
费用:每年89到199美元不等
5. OmniDB(https://omnidb.org/en/downloads-en)
由2ndQuadrant主要赞助的开源工具OmniDB,可以让您在统一的工作区域内添加、编辑和管理数据,并获取其他必要的功能。尽管OmniDB支持MySQL、Oracle和MariaDB等其他数据库系统,但是其主要的支持目标还是PostgreSQL。OmniDB支持Windows、Linux和Mac OS X,三大主流平台。
优点:
- 您可以通过添加和删除连接,来轻松地进行配置。
- 其智能的SQL编辑器,可以帮助您通过自动化完成功能、以及语法突显功能,来编写SQL代码。
- OmniDB提供对于PostgreSQL函数和过程的完整调试功能。
- 您可以自定义监控仪表板,并从显示的图表中获悉相关数据库的实时信息。
- 通过查询各种可视化的计划任务,您可以发现SQL查询中的潜在瓶颈。
- 不同的计算机可以通过加密的形式访问OmniDB。
- 开发人员可以通过插件的方式,添加和共享新的函数功能。
缺点:
- 与pgAdmin和DBeaver相比,OmniDB缺乏社区的支持。因此,这给用户的学习与问题的解答,造成了一些障碍。
- OmniDB的功能不及Navicat和DataGrip的付费版那样丰富。
您可以从链接:https://omnidb.org/en/downloads-en下载OmniDB,大多数用户评价不错。
费用:免费(开源)
总结
综上所述,用户普遍会使用pgAdmin来启动PostgreSQL。它具有强大的社区支持和丰富的资源。因此,作为一款最受欢迎的GUI工具,pgAdmin能够在大多数情况下满足开发人员的各种需求。
如果您追求更好的UI、以及可视化的编辑器,那么DBeaver和OmniDB作为开源的解决方案,会是您的理想选择。
如果您正在寻找比开源工具更为丰富的功能,并且愿意为此付出高昂的价钱,那么Navicat和DataGrip便是市场上最好的GUI产品。
作为补充,市场上其他流行的PostgreSQL GUI工具,还包括:Valentina Studio、Adminer、DB visualizer和SQL workbench。相信总有一款适合您。
原文标题:Which Is the Best PostgreSQL GUI? 2019 Comparison,作者:Kristi Anderson