目录
nPostgreSQL是什么?
nPostgreSQL的体系架构
nPostgreSQL的备份
nPostgreSQL的集群方案
nPostgreSQL VS MySQL
nPostgreSQL 功能专题
PostgreSQL是什么?
PostgreSQL是什么
PostgreSQL对象-关系型数据库管理系统(有一段时间被称为 Postgres95)是
从伯克利写的 POSTGRES 软件包发展而来的。经过十几年的发展,
PostgreSQL 是世界上可以获得的最先进的开放源码的数据库系统, 它提供了多
版本并行控制,支持几乎所有 SQL 构件(包括子查询,事务和用户定义类型和
函数), 并且可以获得非常广阔范围的(开发)语言绑定(包括 C,C++,
Java,perl,tcl,和 python)。
PostgreSQL 是自由免费的,并且所有源代码都可以获得。
PostgreSQL 的开发队伍主要为志愿者,他们遍布世界各地并通过互联网进行联
系,这是一个社区开发项目,它不被任何公司控制。
如果你在寻找PostgreSQL的掌门人,或是什么中央委员会,或是什么所属公司
,你只能放弃了---因为一个也不存在,但我们的确有一个 核心委员会和CVS管
理组,但这些工作组的设立主要是为了进行管理工作而不是对PostgreSQL进行
独占式控制,PostgreSQL项目是由任何人均 可参加的开发人员社区和所有用户
控制的,你所需要做的就是订阅邮件列表,参与讨论即可。
PostgreSQL发展历程
PostgreSQL是什么
伯克利的 POSTGRES 项目:
Michael Stonebraker 领导的 POSTGRES 项目是由防务高级研究项目局(
DARPA), 陆军研究办公室(ARO),国家科学基金(NSF), 以及 ESL, Inc
共同赞助的。POSTGRES 的实现始于 1986 年, 第一个"演示性"系统在 1987
年便可使用了, 并且在 1988 年的 ACM-SIGMOD 大会上展出。在 1989 年六
月发布了版本 1给一些外部的用户使用。用于源代码维护的时间日益增加 占用了
太多本应该用于数据库研究的时间, 为了减少支持的负担,伯克利的
POSTGRES 项目在版本 4.2 时正式终止。
Postgres95:
在 1994 年, Andrew Yu 和 Jolly Chen 向 POSTGRES 中增加了 SQL 语言的解
释器。并随后将 Postgres95 源代码发布到互联网上供大家使用, 成为一个开放
源码的,原先伯克利 POSTGRES 代码的继承者。
PostgreSQL6.X:
到了 1996 年, 很明显的看出"Postgres95"这个名字已经不能经得起时间的考
验了。 于是起了一个新名字 PostgreSQL 用于反映最初的 POSTGRES 和最新的
使用 SQL 的版本之间的关系。 同时版本号也重新从 6.0 开始, 将版本号放回到
最初的由伯克利 POSTGRES 项目开始的顺序中。
PostgreSQL发展历程
PostgreSQL是什么
PostgreSQL7.1-
7.1是继6.5之后的又一个巨大的变化,她首先引入了预写式日志的功能。这样,
事务就拥有了完善的日志机制,可以提供更好的性能,以及还可以实现更优良的
备份和灾难恢复的能力(比如联机热备份和宕机后的自动恢复)。其次是对文本
类型的数据段的长度不再限制,从而很大程度上解决了PostgreSQL的大对象的
问题。
Postgres8.X:
可以在windows下运行,事务保存点功能,改变字段的类型,表空间
即时恢复: 即时恢复允许对服务器进行连续的备份。你既可以恢复到失败那个点
,也可以恢复到以前的任意事务。
新的 Perl 服务器端编程语言
PostgreSQL9.X
HOT standby功能
PostgreSQL版权是什么?
PostgreSQL是什么
PostgreSQL的发布遵从经典的 BSD 版权。它允许用户不限目的地使用
PostgreSQL,甚至你可以销售 PostgreSQL 而不含源代码也可以,唯一的限制
就是你不能因软体自身问题而向我们追诉法律责任,另外就是要求所有的软体拷
贝中须包括以下版权声明。下面就是我们所使用的BSD版权声明内容:
PostgreSQL 资料库管理系统
部分版权(c)1996-2005,PostgreSQL 全球开发小组,部分版权(c)1994-1996 加州大学董事
(Portions copyright (c) 1996-2005,PostgreSQL Global Development Group Portions Copyright (c) 1994-6 Regents of
the University of California)
允许為任何目的使用,拷贝,修改和分发这个软体和它的文档而不收取任何费用, 并且无须签署因此而產生的证明,前提是上
面的版权声明和本段以及下面两段文字出现在所有拷贝中。
(Permission to use, copy, modify, and distribute this software and its documentation for any purpose, without fee,
and without a written agreement is hereby granted, provided that the above copyright notice and this paragraph and
the following two paragraphs appear in all copies.)
在任何情况下,加州大学都不承担因使用此软体及其文档而导致的对任何当事人的直接的, 间接的,特殊的,附加的或者相伴
而生的损坏,包括利益损失的责任,即使加州大学已经建议了这些损失的可能性时也是如此。
。。。。。
。。。。
PostgreSQL在国外很流行。
在日本是仅次于apache的开源软件:
PostgreSQL是什么
PostgreSQL数据库的架构
PostgreSQL数据库架构
PostgreSQL数据库是多进程的架构,每一个客户连接都有一个服务进程为其服
务,也有共享内存,这一点与Oracle数据库是相似的。
PostgreSQL 使用一种客户端/服务器的模式。一个服务器进程,它管理数据库文
件,接受来自客户端应用与数据库的连接,并且代表客户端在数据库上执行操作
。数据库服务器程序叫 postgres 。
PostgreSQL 服务器可以处理来自客户端的多个并发请求。因此,它为每个请求
启动("fork")一个新的进程。从这个时候开始,客户端和新服务器进程就不再经
过最初的 postgres 进程进行通讯。因此,主服务器总是在运行,等待连接,而
客户端及其相关联的服务器进程则是起起停停。
所以PostgreSQL对于大并发的处理能力比较强,同时能够充分利用现在多核
CPU的性能。