Timescale Cloud:性能、扩展、企业级

自托管产品

MST

TimescaleDB 是一个 PostgreSQL 扩展。请确保升级到兼容的 TimescaleDB 和 PostgreSQL 版本。

在 Timescale 上免费试用

Timescale 是一项完全托管的服务,具有自动备份和恢复、带复制功能的高可用性、无缝扩展和调整大小等更多功能。您可以免费试用 Timescale 三十天。

免费试用
  • 在您的迁移机器上安装 PostgreSQL 客户端工具。这包括 psqlpg_dump
  • 阅读您要升级到的 TimescaleDB 版本的发布说明
  • 执行数据库备份。尽管 Timescale 升级是原地执行的,但升级是一项侵入性操作。请务必确保您手头有备份,并且在发生灾难时备份是可读的。

最佳实践是始终使用最新版本的 TimescaleDB。在 GitHub 上订阅我们的发布,或使用 Timescale Cloud,以便始终轻松获取最新更新。

根据您当前运行的 TimescaleDB 和 PostgreSQL 版本以及您要更新到的版本,检查以下支持矩阵,然后选择您的升级路径。

例如,要将 TimescaleDB 2.13(基于 PostgreSQL 13)升级到 TimescaleDB 2.18.2,您需要

  1. 将 TimescaleDB 升级到 2.15
  2. 将 PostgreSQL 升级到 14、15 或 16。
  3. 将 TimescaleDB 升级到 2.18.2。

在升级 TimescaleDB 之前,您可能需要升级到最新的 PostgreSQL 版本。此外,如果您使用 Timescale Toolkit,请确保 timescaledb_toolkit 扩展版本 >=
v1.6.0,然后才能升级 TimescaleDB 扩展。

TimescaleDB 版本PostgreSQL 17PostgreSQL 16PostgreSQL 15PostgreSQL 14PostgreSQL 13PostgreSQL 12PostgreSQL 11PostgreSQL 10
2.20.x
2.19.x
2.18.x
2.17.x
2.16.x
2.15.x
2.14.x
2.13.x
2.12.x
2.10.x
2.5 - 2.9
2.4
2.1 - 2.3
2.0
1.7

我们不建议将 TimescaleDB 与 PostgreSQL 17.1、16.5、15.9、14.14、13.17、12.21 一起使用。
这些次要版本引入了一个破坏性的二进制接口更改,该更改在被识别后,已在随后的 PostgreSQL 次要版本 17.2、16.6、15.10、14.15、13.18 和 12.22 中恢复。从源代码构建时,最佳实践是使用 PostgreSQL 17.2、16.6 等更高版本进行构建。Timescale Cloud 用户以及适用于 Linux、Windows、macOS、Docker 和 Kubernetes 的平台软件包不受影响。

您可以使用 pg_upgrade 来原地升级 PostgreSQL。pg_upgrade 允许您保留当前 PostgreSQL 安装的数据文件,同时将新的 PostgreSQL 二进制运行时绑定到它们。

  1. 查找 PostgreSQL 二进制文件的位置

    OLD_BIN_DIR 环境变量设置为包含 postgres 二进制文件的文件夹。例如,which postgres 返回类似 /usr/lib/postgresql/16/bin/postgres 的内容。

    export OLD_BIN_DIR=/usr/lib/postgresql/16/bin
  2. 设置您的连接字符串

    此变量包含要升级的数据库的连接信息

    export SOURCE="postgres://<user>:<password>@<source host>:<source port>/<db_name>"
  3. 检索 PostgreSQL 数据文件夹的位置

    OLD_DATA_DIR 环境变量设置为以下命令返回的值

    psql -d "$SOURCE" -c "SHOW data_directory ;"

    PostgreSQL 返回类似以下内容

    ----------------------------
    /home/postgres/pgdata/data
    (1 row)
  4. 选择 PostgreSQL 二进制文件和数据文件夹的新位置

    例如

    export NEW_BIN_DIR=/usr/lib/postgresql/17/bin
    export NEW_DATA_DIR=/home/postgres/pgdata/data-17
  5. 使用 psql 执行升级

    pg_upgrade -b $OLD_BIN_DIR -B $NEW_BIN_DIR -d $OLD_DATA_DIR -D $NEW_DATA_DIR

如果您要将数据移动到新的物理 PostgreSQL 实例,可以使用 pg_dumppg_restore 从旧数据库中导出数据,然后将其恢复到新的、升级后的数据库中。更多信息,请参阅备份和恢复部分

关键词

在此页发现问题?报告问题或在 GitHub 上编辑此页