历史版本。 PostgreSQL 9.3 已结束支持。 2018-11-08. 请参阅 当前版本手册.
1.2. 架构基础 #
在继续之前,你应该先了解PostgreSQL的基本系统架构。了解PostgreSQL各部分如何交互,会让本章更容易理解。
用数据库术语来说,PostgreSQL采用客户端/服务器模型。一次PostgreSQL会话由以下协同工作的进程(程序)组成:
和典型的客户端/服务器应用一样,客户端和服务器可以位于不同的主机上。在这种情况下,它们通过 TCP/IP 网络连接通信。你应该记住这一点,因为在客户端机器上可访问的文件,在数据库服务器机器上可能不可访问(或者只能使用不同的文件名访问)。
PostgreSQL服务器可以处理来自客户端的多个并发连接。为此,它会为每个连接启动(“forks”)一个新进程。从那时起,客户端和新的服务器进程就无需原始
postgres进程介入而直接通信。因此,这个主服务器进程始终在运行,等待客户端连接,而客户端及其关联的服务器进程则不断创建和退出。(当然,这一切对用户都是不可见的。这里只是为求完整而提及。)