📜  PostgreSQL功能

📅  最后修改于: 2020-11-30 00:58:40             🧑  作者: Mango

PostgreSQL功能

它是最流行的数据库之一,支持JSON(非关系)查询和SQL(关系)查询。 PostgreSQL是一个对象关系数据库管理系统(ORDBMS) 。它包含各种高级数据类型和强大的功能集,可提高软件的可扩展性,可靠性和数据完整性。

在本节中,我们将讨论PostgreSQL的最高级功能,数据库管理工具以及优缺点,这将有助于我们增强对PostgreSQL的了解。

PostgreSQL包含多种功能,这些功能旨在帮助开发人员开发应用程序,管理数据集中的数据,管理人员可以保持数据完整性并创建风险承受环境。每当新版本上市时, PostgreSQL全球开发人员小组都会增强以前的功能,并根据用户需求添加一些新功能。

PostgreSQL的基本功能如下:

  • 免费下载:它是开源的,我们可以轻松地从PostgreSQL的官方网站下载它。
  • 在多种操作系统上兼容: PostgreSQL在所有主要操作系统上运行,例如Microsoft Windows,Linux,MacOS X,UNIX(AIX,BSD,HP-UX,SGI IRIX,Solaris和Tru64)等。
  • 与各种编程语言兼容:它支持多种编程接口,例如C / C++,JAVA, Python,Perl,Ruby,Tcl和ODBC(开放数据库连接)

注意:Tcl是通用,高级,动态和解释性编程语言。

  • 与数据完整性兼容:它支持数据完整性,其中包括:
    • 主键
    • 唯一,非空
    • 外键
    • 显式锁,咨询锁
    • 排除约束
  • 支持SQL的多种功能: PostgreSQL支持SQL的多种功能,其中包括:
    • MVCC(多版本并发控制)。
    • 它支持多个索引,例如多列,部分索引,B树和表达式。
    • SQL子选择。
    • 复杂的SQL查询。
    • 流复制
    • 它支持事务,通过Savepoints进行嵌套事务。
    • 即时编译表达式
    • 表分区
  • 与多种数据类型兼容: PostgreSQL支持多种数据类型,例如:
    • 结构化:数组,日期和时间,UUID(通用唯一标识符),数组,范围。
    • 基本体:字符串,整数,布尔值,数字。
    • 自定义:自定义类型,复合。
    • 几何:多边形,圆形,直线,点,
    • 文档: XML,JSON / JSONB,键值。
  • 高度可扩展: PostgreSQL在以下几个阶段具有高度可扩展性:
    • 它支持过程语言,例如Perl,PL / PGSQL和Python等。
    • JSON / SQL路径表达式
    • 存储过程和功能。
    • 对于表,它支持可自定义的存储界面。
    • 它与外部数据包装器兼容,后者通过标准SQL接口连接到其他数据库。
  • 安全:它很安全,因为它遵循以下几个安全方面:
    • PostgreSQL提供了一个强大的访问控制系统。
    • 它包括几种身份验证,例如轻型目录访问协议(LDAP),通用安全服务应用程序接口(GSSAPI), SCRAM-SHA-256,安全支持提供程序接口(SSPI),证书等。
    • PostgreSQL支持列级和行级安全性。
  • 高度可靠:高度可靠,还提供灾难恢复,例如:
    • 活动备用数据库,PITR(时间点恢复)
    • 它支持WAL(预写日志记录)
    • 表空间
    • 它支持不同类型的复制,例如“同步”,“异步”和“逻辑”。
  • PostgreSQL支持国际化,这意味着国际字符集包括ICU归类,不区分重音和区分大小写的归类以及全文搜索
  • 在PostgreSQL中,可以将表设置为从“父”表继承其特征。
  • 与ANSI-SQL2008兼容。
  • PostgreSQL将帮助我们改善服务器端编程的功能。
  • 我们可以安装几个扩展来为PostgreSQL添加附加功能。

PostgreSQL数据库管理

PostgreSQL数据库管理涵盖了基本的PostgreSQL数据库服务器管理操作。我们在市场上有几种开源和付费工具。让我们了解一些PostgreSQL最常用的数据库管理工具:

psql

它是基于终端的前端命令行工具;在这里我们可以直接输入SQL查询或从文件运行它们,我们还可以看到查询结果。它为我们提供了许多Meta命令和几种Shell,例如自动执行各种任务并简化脚本编写。

phpPgAdmin

它是PostgreSQL的基于Web的管理工具,建立在phpMyAdmin界面上,该界面最初是为MySQL管理而编写的。 phpPgAdmin用PHP编程语言编写。它可以轻松配置并提供简单的数据操作。它保持了Slony主从复制机的功能,并且还提供27种语言的版本。在这里,我们可以导入SQL脚本并复制数据。

pgAdmin

它是PostgreSQL最著名的开源管理和开发平台之一。 PgAdmin是世界上最先进的数据库。它可以在各种操作系统(例如UNIX, Linux ,Mac OS X和Windows)上使用,以实现PostgreSQL 9.2及更高版本。

PgFouine

它是PostgreSQL的著名查询日志分析器,用于从PostgreSQL的日志文件生成报告。 RHEL (Red Hat Enterprise Linux)和CentOS Linux系统可通过EPEL (Enterprise Linux的额外软件包)存储库进行访问。它是一个PHP脚本,并且提供了适度的库列表。 pgFouine包含较旧的UNIX系统和Windows。

pgDevOps

它是一套Web工具,已安装并管理多个PostgreSQL扩展和版本。它创建SQL查询和社区组件,监视正在运行的数据库,并确定性能问题。这是一个WSGI Python27 Flask应用程序,可以在不同的跨平台(例如Windows ,Linux和OSX)上执行。它是一个开源应用程序,可以由多个服务器上的各种用户使用。

注意:大多数组织都建议使用PostgreSQL专有工具。通常,它是一个开源工具,用于共享管理功能。另一方面,它在数据建模,报告导入和导出方面提供了增强。

一些常用的专有工具如下:

  • PostgreSQL的闪电管理员
  • 博兰·基利克斯
  • DBOne
  • DBTools管理器PgManager
  • 雷卡尔
  • 数据架构师
  • SyBase电源设计器
  • Microsoft Access
  • 赢赢
  • DeZign for Databases
  • PG资源管理器
  • Case Studio 2
  • pgEdit
  • 剃刀SQL
  • MicroOLAP数据库设计器
  • 水族数据工作室
  • PostgreSQL的EMS数据库管理工具
  • 纳维卡特
  • PostgreSQL的SQL Maestro Group产品
  • PostgreSQL的Datanamic DataDiff
  • PostgreSQL的Datanamic SchemaDiff
  • DB MultiRun PostgreSQL版
  • SQLPro
  • SQL图像查看器
  • SQL数据集等

PostgreSQL的优缺点

PostgreSQL的优点如下:

  • PostgreSQL易于使用;那就是为什么我们不需要太多培训。
  • 它要求企业进行低维护管理以及嵌入式使用。
  • PostgreSQL管理关系数据库中的数据,因为它非常强大且健壮。
  • 我们可以快速获取PostgreSQL的源代码,因为它可以在开放源代码许可证中免费获得,并且我们可以立即实施并根据我们的要求进行更改。
  • 它可以执行动态Web应用程序和网站作为LAMP堆栈选项。
  • PostgreSQL是一个高度风险容忍的数据库。

PostgreSQL的缺点如下:

  • 与MySQL相比,PostgreSQL不支持各种开源应用程序。
  • 在这种情况下,创建复制有点复杂。
  • 它不是由一家公司维护的。
  • PostgreSQL的速度性能不如其他工具。
  • 与MySQL相比,它有点慢。
  • 有时,对于学习者而言,安装过程并不容易。