TimescaleDB 是一个 PostgreSQL 扩展,用于处理时序数据和需要摄取和查询大量数据的苛刻工作负载。您可以从源代码在任何本地系统上安装 TimescaleDB 实例。
想要跳过这些步骤吗?
在云端部署 Timescale 服务。我们为您的数据库调整性能并处理可扩展性、高可用性、备份和管理,让您可以放松身心。
本节向您展示如何
- 在 PostgreSQL 上安装和配置 TimescaleDB - 设置自托管 PostgreSQL 实例以高效运行 TimescaleDB1。
- 将 TimescaleDB 扩展添加到您的数据库 - 在数据库上启用 TimescaleDB 功能和性能改进。
要从源代码安装 TimescaleDB,您需要在您的开发环境中具备以下条件
PostgreSQL:
使用 PostgreSQL 安装说明安装受支持的 PostgreSQL 版本。
我们建议不要将 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 和由 Timescale 构建和分发的平台软件包的用户不受影响。
构建工具:
适用于您操作系统的 C 语言编译器,例如
gcc
或clang
。如果您使用的是 Microsoft Windows 系统,您可以安装 Visual Studio 2015 或更高版本,而不是 CMake 和 C 语言编译器。在运行安装程序时,请确保安装 CMake 和 Git 的 Visual Studio 组件。
本节向您展示如何使用 Timescale 提供的源代码在受支持的平台上安装最新版本的 PostgreSQL 和 TimescaleDB。
安装最新的 PostgreSQL 源代码
在命令提示符下,克隆 TimescaleDB GitHub 存储库
git clone https://github.com/timescale/timescaledb更改到克隆的目录
cd timescaledb检出最新版本。您可以在我们的 版本页面上找到最新的版本标签
git checkout 2.17.2此命令会产生一个错误,提示您现在处于
detached head
状态。这是预期行为,发生这种情况是因为您已检出标签,而不是分支。照常继续执行此过程中的步骤。
构建源代码
引导构建系统
对于在 Microsoft Windows 上安装,您可能需要将
pg_config
和cmake
文件位置添加到您的路径。在 Windows 搜索工具中,搜索系统环境变量
。pg_config
的路径应为C:\Program Files\PostgreSQL\<version>\bin
。cmake
的路径位于 Visual Studio 目录中。构建扩展
安装 TimescaleDB
配置 PostgreSQL
如果您安装了多个 PostgreSQL 版本,则 TimescaleDB 只能与其中一个版本关联。TimescaleDB 构建脚本使用
pg_config
来查找 PostgreSQL 存储其扩展文件的位置,因此您可以使用pg_config
来查找 TimescaleDB 正在使用的 PostgreSQL 安装。找到
postgresql.conf
配置文件psql -d postgres -c "SHOW config_file;"打开
postgresql.conf
文件并将shared_preload_libraries
更新为shared_preload_libraries = 'timescaledb'如果您使用其他预加载库,请确保它们以逗号分隔。
为 TimescaleDB 调整您的 PostgreSQL 实例
sudo timescaledb-tune当您安装 TimescaleDB 时,此脚本包含在
timescaledb-tools
包中。有关更多信息,请参阅配置。重启 PostgreSQL 实例
设置用户密码
以
postgres
身份登录 PostgreSQLsudo -u postgres psql您现在在 psql shell 中。
设置
postgres
的密码\password postgres设置密码后,键入
\q
以退出 psql。
为了提高性能,您需要在自托管 PostgreSQL 实例上的每个数据库上启用 TimescaleDB。本节向您展示如何使用命令行中的 psql
在 PostgreSQL 中为新数据库启用 TimescaleDB。
连接到 PostgreSQL 实例上的数据库
在 PostgreSQL 中,默认用户和数据库均为
postgres
。要使用其他数据库,请将<database-name>
设置为该数据库的名称psql -d "postgres://<username>:<password>@<host>:<port>/<database-name>"将 TimescaleDB 添加到数据库
CREATE EXTENSION IF NOT EXISTS timescaledb;检查 TimescaleDB 是否已安装
\dx您将看到已安装扩展的列表
List of installed extensionsName | Version | Schema | Description-------------+---------+------------+---------------------------------------------------------------------------------------plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languagetimescaledb | 2.17.2 | public | Enables scalable inserts and complex queries for time-series data (Community Edition)按 q 退出扩展列表。
就是这样!您已经在自托管的 PostgreSQL 实例上的数据库上运行了 TimescaleDB。
现在您已经运行了 TimescaleDB,请查看
- 教程:通过使用示例数据集,了解各种业务场景。
- 使用 Timescale:浏览 TimescaleDB 提供的功能。
关键词
在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页。