PostgreSQL - 简介介绍 首页PostgreSQLPostgreSQL - 简介

PostgreSQL是开源的对象-关系数据库数据库管理系统,在类似BSD许可与MIT许可的PostgreSQL许可下发行。

PostgreSQL这个单字的拼法让有些人觉得很难读,特别是那些把SQL读作"sequel"的人。PostgreSQL开发者把它读作"post-gress-Q-L"。(Audio sample 页面存档备份,存于互联网档案馆,5.6k MP3)。它也经常被简称为"postgres"。

PostgreSQL是一个功能强大的开源对象关系数据库系统,它具有超过15年的积极开发阶段,并且其可靠的体系结构在可靠性,数据完整性和正确性方面赢得了极高的声誉。

本教程将为您提供PostgreSQL的快速入门,并使您熟悉PostgreSQL编程。

PostgreSQL简史

PostgreSQL经历了长时间的演变。该项目最初开始于在加利福尼亚大学伯克利分校的Ingres计划。这个计划的领导者迈克尔·斯通布雷克在1982年离开加利福尼亚大学伯克利分校去推进Ingres的商业化,但最后还是返回了学术界。在1985年返回伯克利之后,斯通布雷克开始了post-Ingres计划,致力于解决在1980年代早期所出现一些数据库系统存在的问题。Postgres和Ingres的代码库开始(并保持)完全分离。

新项目Postgres的目的是通过增加最少的功能来完全支持所需要的类型。这些功能包括类型定义和完整描述数据关系的能力。完整描述数据关系的能力之前虽广为使用但却需要由用户来维护。Postgres的数据库能够"理解"关系,并可以使用一定的规则以自然方式在相关的表中检索信息。

从1986年开始,该项目组发表了一些描述这一系统基本原理的论文,并在1988年实现并运行了一个Demo版本。项目组在1989年六月向少数用户发行了版本1.0,随后在1990年6月发行了带有全新规则系统的版本2.0。1991年的版本3.0再次重写了规则系统,并增加了对多个存储管理器的支持与改进的查询引擎。Postgres在1993年开始拥有大量用户,这些用户提供了大量的功能与优化建议。但是在发行了作为细节修正的版本4.0之后,Postgres计划就终止了。

尽管Postgres计划正式的终止了,BSD许可证(Postgres遵守BSD许可证发行)却使开发者们得以获取源代码并进一步开发系统。1994年,两个加利福尼亚大学伯克利分校的研究生 Andrew Yu和Jolly Chen 增加了一个SQL语言解释器来替代早先的基于Ingres的QUEL系统,创建了Postgres95。代码随后被发布到互联网上供全世界使用。Postgres95在1996年被重命名为PostgreSQL以便突出该数据库全新的SQL查询语言。

PostgreSQL首次发行即选择6.0作为其版本号,由来自世界各地的数据库开发者和志愿者们,通过互联网进行软件的维护。在2005年1月19日,PostgreSQL发行了版本8.0。自版本8.0之后,PostgreSQL得以借助原生方式运行于Windows系统之下。

尽管许可证允许PostgreSQL被用于商业用途,PostgreSQL却并没有像Ingres那样快速的被商业化。在2005年1月,PostgreSQL才收到了它来自数据库厂商的第一份援助。Pervasive Software([1] 页面存档备份,存于互联网档案馆)宣布了对PostgreSQL的商业支持和社区参与。

但其实在此之前,就已经有一些公司开始对PostgreSQL伸出援手。2000年,前Red Hat投资者筹组了一间名为Great Bridge的公司来商业化PostgreSQL,与其他商用数据库厂商展开竞争。Great Bridge资助了好几位PostgreSQL开发者,并且贡献了许多资源给社区。然而到了2001年末,Great Bridge却终止了营运,一部分原因在于PostgreSQL在被商业化后,其市场状况并不理想。

2001年,Command Prompt, Inc.发布了Mammoth PostgreSQL,这是最老牌的PostgreSQL商业软件。他们通过对开发者的赞助,和开发PL/Perl、PL/php等PostgreSQL在各语言中的实现,以及维护PostgreSQL Build Farm等方式来支持PostgreSQL社区。

2005年1月,PostgreSQL接到了来自另一间数据库厂商Pervasive Software的支持,该公司以常见于Novell NetWare平台的Btrieve产品而闻名。他们宣布了进行商业支持和对社区的参与。但在他们成功商业化PostgreSQL一段时间后的2006年7月,Pervasive Software离开了PostgreSQL的支持市场。

在2005年中,两间其他的公司宣布商业化PostgreSQL,分别进入不同的利基市场。EnterpriseDB宣布将专注于让使用Oracle的应用程序能更容易的在PostgreSQL上运行。Greenplum则专注贡献在数据仓库和商业智能的应用程序,尤其以BizGres项目著称。

2005年10月,昇阳的软件部门运行副总裁John Loiacono谈论到:"我们不会去OEM微软的产品,我们正关注着PostgreSQL",尽管当时并没有任何规格发布。到了2005年11月,昇阳宣布将支持PostgreSQL。2006年6月,Solaris 10包含PostgreSQL一起发布。

至于PostgreSQL项目本身,他继续着每年一个主要版本发布,以及次要的调试版本发布,这些发布全都遵守BSD许可。

点我分享笔记