跳至内容

PostgreSQL/升级

来自维基教科书,开放的书籍,开放的世界


升级 PostgreSQL 软件时,您必须注意集群中的数据 - 这取决于升级的是主版本还是次版本。PostgreSQL 版本号由两个或三个用冒号分隔的数字组组成。前两个组表示主版本,第三组(如果存在)表示次版本。

次版本内的升级很简单。内部数据格式不会改变,所以您只需要在实例关闭时安装新软件。

主版本的升级可能会导致内部数据结构的不兼容。因此,可能需要采取特殊措施。有多种策略可以克服这种情况。在许多情况下,主版本的升级还会引入一些用户可见的不兼容性,因此可能需要更改应用程序编程。您应该仔细阅读发行说明。

pg_upgrade

[编辑 | 编辑源代码]

pg_upgrade 是一个实用程序,它根据新版本的需要修改数据文件和系统目录。它有两个主要行为:在 --link 模式下,文件会在原地修改,否则文件会被复制到一个新位置。

pg_dumpall

[编辑 | 编辑源代码]

pg_dumpall 是一个标准实用程序,用于生成集群的逻辑备份。由 pg_dumpall 生成的文件是纯文本文件,因此独立于所有内部结构。当需要修改数据的内部结构(升级、不同的硬件架构、不同的操作系统等)时,此类逻辑备份可以用于将数据从旧系统传输到新系统。

Slony 复制系统提供了在不同主版本之间传输数据的可能性。使用它,您可以在很短的时间内将复制从服务器切换到新的主服务器。

PostgreSQL 提供了逻辑流式传输格式的复制。在当前版本 9.5 中,此功能仅限于主服务器和备用服务器的相同版本,但计划将其扩展以用于异构服务器环境。


华夏公益教科书