windows下postgresql安装timescaledb
timescaledb是一个时序数据库,可以创建超表hypertable。它并不是一个独立的数据库,它依赖于postgresql,目前相当于postgresql的一个插件或者扩展。
要安装timescaledb,需要先安装postgresql。
这里安装的postgresql是12.14版本,下载地址:https://get.enterprisedb.com/postgresql/postgresql-12.14-1-windows-x64-binaries.zip
timescaledb是2.10.1版本,下载地址:https://github.com/timescale/timescaledb/releases/tag/2.10.1
这里为了配合postgresql版本,我们选择第一个下载项:

前面下载的postgresql是免安装版本,直接解压到系统中的d:/tools目录下,目录结构如下:

这里本来没有data目录的,我们需要手动创建。
初始化postgresql,进入postgresql安装目录,打开命令行:
bin\initdb -D data
这一步会把数据文件生成在data目录,并且生成配置文件postgresql.conf 。
. 
到这里,postgresql基本就可以使用了, 免安装版本很省事。
==========
接着就是timescaledb的安装,简单的安装,就是执行timescaledb目录下的setup.exe。这种方式需要设置postgresql环境变量,主要如下4个:
PGHOME: D:\tools\pgsql
PGDATA: D:\tools\pgsql\data
PGLIB: D:\tools\pgsql\lib
Path: D:\tools\pgsql\bin;%Path%
这种安装方式,本质上还是替换一些文件,如下所示timescaledb解压之后的目录结构:

在执行timescaledb-tune.exe的时候,把其中三个动态库文件加入到了postgresql安装目录下的lib目录,把其余control和sql文件加入到了share/extension目录,最后对postgresql.conf进行了简单配置。
还有一种安装方式就是上面提到的手动移动文件的办法:
1、把标红的三个动态库文件timescaledb.dll,timescaledb-2.10.1.dll,timescaledb-tsl-2.10.1.dll文件拷贝到lib目录。
2、移动标绿的文件到share/extension目录。
3、修改postgresql.conf文件,把shared_preload_libraries="timescaledb"加上。这个配置shared_preload_libraries=""默认是注释的,并且为空,我们要安装timescaledb就把他配置上。
替换完成,就启动postgresql。
D:\tools\pgsql>bin\pg_ctl.exe -D data -l pgsql.log start
等待服务器进程启动 .... 完成
服务器进程已经启动
我们使用命令行进入postgresql,默认用户是系统用户名,我们进入postgres数据库。
D:\tools\pgsql>bin\psql postgres
psql (12.14)
输入 "help" 来获取帮助信息.postgres=# create database test;
CREATE DATABASE
postgres=# \l数据库列表名称 | 拥有者 | 字元编码 | 校对规则 | Ctype | 存 取权限
-----------+---------------+----------+--------------------------------+--------------------------------+---------------------------------postgres | Administrator | UTF8 | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 |template0 | Administrator | UTF8 | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 | =c/Administrator +| | | | | Administrator=CTc/Administratortemplate1 | Administrator | UTF8 | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 | =c/Administrator +| | | | | Administrator=CTc/Administratortest | Administrator | UTF8 | Chinese (Simplified)_China.936 | Chinese (Simplified)_China.936 |
(4 行记录)postgres=# \c test
您现在已经连接到数据库 "test",用户 "Administrator".
test=# \dx已安装扩展列表名称 | 版本 | 架构模式 | 描述
---------+------+------------+------------------------------plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural language
(1 行记录)
创建了test数据库,我们看了扩展只有plpgsql。
接着,我们创建timescaledb扩展。
test=# create extension timescaledb;
警告:
WELCOME TO_____ _ _ ____________
|_ _(_) | | | _ \ ___ \| | _ _ __ ___ ___ ___ ___ __ _| | ___| | | | |_/ /| | | | _ ` _ \ / _ \/ __|/ __/ _` | |/ _ \ | | | ___ \| | | | | | | | | __/\__ \ (_| (_| | | __/ |/ /| |_/ /|_| |_|_| |_| |_|\___||___/\___\__,_|_|\___|___/ \____/Running version 2.10.1
For more information on TimescaleDB, please visit the following links:1. Getting started: https://docs.timescale.com/timescaledb/latest/getting-started2. API reference documentation: https://docs.timescale.com/api/latest3. How TimescaleDB is designed: https://docs.timescale.com/timescaledb/latest/overview/core-conceptsNote: TimescaleDB collects anonymous reports to better understand and assist our users.
For more information and how to disable, please see our docs https://docs.timescale.com/timescaledb/latest/how-to-guides/configuration/telemetry.CREATE EXTENSION
test=# \dx已安装扩展列表名称 | 版本 | 架构模式 | 描述
-------------+--------+------------+-------------------------------------------------------------------plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languagetimescaledb | 2.10.1 | public | Enables scalable inserts and complex queries for time-series data
(2 行记录)
到这里,我们基本就可以认为timescaledb安装成功。
这种免安装版本,基本没有什么配置,就是执行几个简单的命令,初始化数据库,启动数据库,创建扩展。在安装timescaledb的时候,手动添加文件到postgresql安装目录中,也从安装的角度感受到了timescaledb确实依赖postgresql,而且它相当于一个插件,有没有,对postgresql本身影响不大,如果timescaledb安装失败,最多就是创建timescaledb扩展的时候可能会报错。
最后,我们通过pgAdmin可以看到有了timescaledb扩展的test数据库中的函数:

create_hypertable就在其中。时序数据库最主要就是利用这个函数来创建超表。
相关文章:
windows下postgresql安装timescaledb
timescaledb是一个时序数据库,可以创建超表hypertable。它并不是一个独立的数据库,它依赖于postgresql,目前相当于postgresql的一个插件或者扩展。 要安装timescaledb,需要先安装postgresql。 这里安装的postgresql是12.14版本&am…...
Linux系统常用命令大全
本教程将介绍Linux系统的基本操作,包括文件操作、用户管理和软件安装等。 1. 文件操作 1.1 查看文件内容 使用cat命令可以查看文件的内容,例如:cat file.txt 1.2 创建新文件 使用touch命令可以创建新文件,例如:to…...
月报总结|Moonbeam 3月份大事一览
本月,Moonbeam在社区治理上进入了全新的阶段 — — 针对第一批生态系统Grants的Snapshot投票结果揭晓,链上公投已在进行中,社区获得了更多表达的机会与权力,这些项目也将为生态注入新的活力。 活动方面,Moonriver Ris…...
多功能料理锅语音播放芯片——NV040C
多功能料理锅就是一锅搭配多个锅盘,可以实现火锅、烤肉、花式煎蛋、丸子等多种烹饪功能。 多功能料理锅语音方案设计需求: 多功能锅本身体积有限,按钮比较少,相应功能的字体要贴按钮旁边,字体也是比较小的,…...
vue23自定义svg图标组件
可参考: 未来必热:SVG Sprites技术介绍 懒人神器:svg-sprite-loader实现自己的Icon组件 在Vue3项目中使用svg-sprite-loader 前置知识 在页面中,虽然可以通过如下的方式使用img标签,来引入svg图标。但是,…...
相机雷达时间同步(基于ROS)
文章目录运行环境:思路:同步前和同步后效果对比1.1创建工作空间1.2创建功能包2.1编写源文件2.2编写头文件2.3编写可执行文件2.4配置文件3.1编译运行4.1录制时间同步后的rosbag4.2rviz可视化rosbag运行环境: ubuntu20.04 noetic usb_cam 速腾R…...
素数环PrimeRing [3*]
目录 素数环PrimeRing [3*] 程序设计 程序分析 素数环PrimeRing [3*] 把1~N这N个整数摆成一个环,要求任意相邻两个数的和为素数。按字典序打印出以1开始的素数环 Input 一个整数N (<=10) Output 每行一个素数环。每个数之间用一个空格隔开。 无解输出 No Solution Sampl…...
mongodb 连接池配置
参考官方描述: 如果spring使用以下mongodb的配置,则默认是没有连接池的 spring:data:mongodb:host: 地址port: 27017database: 数据库名username: 账号password: 密码 每隔一两分钟没有去请求的话就会断开连接重连,每次都要等待5-10秒之间才…...
数据在内存中的存储(深度剖析)
目录 1.数据类型介绍 1.1类型分类 2.整形在内存中的存储 2.1原码,反码,补码 2.2大小端介绍 2.3练习 3.浮点型在内存中的存储 3.1浮点数存储规则 引入: 有正负的数据可以存放在有符号的变量中 只有正数的数据可以存放在无符号的变量…...
python 实现二叉搜索树的方法有哪些?
树的介绍 树不同于链表或哈希表,是一种非线性数据结构,树分为二叉树、二叉搜索树、B树、B树、红黑树等等。 树是一种数据结构,它是由n个有限节点组成的一个具有层次关系的集合。用图片来表示的话,可以看到它很像一棵倒挂着的树。…...
ORM概述
1_ORM概述[理解] 解释: 对象关系映射模型特点: 1.将类名,属性, 映射成数据库的表名和字段2.类的对象,会映射成为数据库表中的一行一行的数据 优缺点: 优点: 1.不再需要编写sql语句2.不再关心使用的是什么数据库了 缺点: 1.由于不是直接通过sql操作数据库,所以有性能损失 2_…...
程序员必知必会7种UML图(类图、序列图、组件图、部署图、用例图、状态图和活动图)画法盘点
众所周知,软件开发是一个分阶段进行的过程。不同的开发阶段需要使用不同的模型图来描述业务场景和设计思路,在不同的阶段输出不同的设计文档也是必不可少的,例如,在需求分析阶段需要输出领域模型和业务模型,在架构阶段…...
基于asp的搜索引擎开发和实现
随着因特网的迅猛发展、WEB信息的增加,用户要在信息海洋里查找信息,就像大海捞针一样,搜索引擎技术恰好解决了这一难题。目前,搜索引擎系统可以分类三大类,分别是:目录式搜索引擎:以人工方式或半…...
代码随想录刷题-字符串-实现 strStr()
文章目录实现 strStr()习题暴力解法kmp 解法实现 strStr() 本节对应代码随想录中:代码随想录,讲解视频:帮你把KMP算法学个通透!(理论篇)_哔哩哔哩_bilibili、帮你把KMP算法学个通透!࿰…...
前端已死?金三银四?你收到offer了吗?
目录 一、前言 二、“唱衰” 三、不局限于框架、前端 四、打动面试官 五、正向加成 六、小结 一、前言 最近在脉脉、知乎等平台都有人在渲染前端从业人员的危机,甚至使用“前端已死”的字眼,颇有“语不惊人死不休”的意味,对老鸟来说&a…...
C生万物 | 十分钟带你学会位段相关知识
结构体相关知识可以先看看这篇文章 —— 链接 一、什么是位段 位段的声明和结构是类似的,有两个不同: 位段的成员必须是 int、unsigned int 或signed int位段的成员名后边有一个冒号和一个数字 在下面,我分别写了一个结构体和一个位段&…...
Spring Boot基础学习之(十):修改员工的信息
注意:spring boot专栏是一个新手项目,博文顺序则是功能实现的流程,如果有看不懂的内容可以到前面系列去了解。 本次项目所有能够使用的静态资源可以免费进行下载 静态资源 在本篇代码DAO层将通过Java文件去实现,在这里就不连接数…...
闭关十几天,我完成了我的毕业设计
个人简介 👀个人主页: 前端杂货铺 🙋♂️学习方向: 主攻前端方向,也会涉及到服务端(Node.js) 📃个人状态: 在校大学生一枚,已拿多个前端 offer(…...
认识rust的项目管理工具--cargo
cargo 提供了一系列的工具,从项目的建立、构建到测试、运行直至部署,为 Rust 项目的管理提供尽可能完整的手段。不过,我们无需再手动安装,之前安装 Rust 的时候(用rustup或者vscode加插件的方式安装)&#…...
面试常问的Linux之 I/O 复用
I/O 复用 一、I/O的概念 在Linux系统中,I/O(输入/输出)指的是计算机系统的数据交换过程,包括从外部设备读取数据(输入)和将数据发送到外部设备(输出)。I/O操作是Linux系统中非常重要…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
理解 MCP 工作流:使用 Ollama 和 LangChain 构建本地 MCP 客户端
🌟 什么是 MCP? 模型控制协议 (MCP) 是一种创新的协议,旨在无缝连接 AI 模型与应用程序。 MCP 是一个开源协议,它标准化了我们的 LLM 应用程序连接所需工具和数据源并与之协作的方式。 可以把它想象成你的 AI 模型 和想要使用它…...
基于Uniapp开发HarmonyOS 5.0旅游应用技术实践
一、技术选型背景 1.跨平台优势 Uniapp采用Vue.js框架,支持"一次开发,多端部署",可同步生成HarmonyOS、iOS、Android等多平台应用。 2.鸿蒙特性融合 HarmonyOS 5.0的分布式能力与原子化服务,为旅游应用带来…...
抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...
OkHttp 中实现断点续传 demo
在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...
第25节 Node.js 断言测试
Node.js的assert模块主要用于编写程序的单元测试时使用,通过断言可以提早发现和排查出错误。 稳定性: 5 - 锁定 这个模块可用于应用的单元测试,通过 require(assert) 可以使用这个模块。 assert.fail(actual, expected, message, operator) 使用参数…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
