Timescale DB 未创建超表
对于一个Golang开发者来说,牢固扎实的基础是十分重要的,编程网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《Timescale DB 未创建超表》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!
问题内容我正在遵循 timescaledb 的教程.. https://docs.timescale.com/timescaledb/latest/how-to-guides/hypertables/create/#create-a-hypertable
但我无法创建超表..我已成功安装 postgres 和 timescale。为什么我不能制作超表?
package main
import (
"context"
"encoding/json"
"fmt"
"log"
"os"
"runtime"
"strconv"
"sync"
"github.com/jackc/pgx/v4/pgxpool"
)
func main(){
timeScaleDB()
}
func timeScaleDB(){
psqlInfo := fmt.Sprintf("host=%s port=%d user=%s "+
"password=%s dbname=%s sslmode=disable",
host, port, user, password, dbname)
ctx := context.Background()
dbpool, err := pgxpool.Connect(ctx, psqlInfo)
if err != nil {
fmt.Fprintf(os.Stderr, "Unable to connect to database: %v\n", err)
os.Exit(1)
}
defer dbpool.Close()
queryCreatetable := `CREATE TABLE sample_table (
time TIMESTAMPTZ NOT NULL,
id INTEGER PRIMARY KEY,
name VARCHAR NOT NULL
);
SELECT create_hypertable('sample_table', 'time');`
//execute statement
_, err = dbpool.Exec(ctx, queryCreatetable)
if err != nil {
fmt.Fprintf(os.Stderr, "Unable to create sample_table hypertable: %v\n", err)
os.Exit(1)
}
fmt.Println("Successfully created hypertable sample_table")
}
错误:无法创建sample_table超表:错误:函数create_hypertable(未知,未知)不存在(sqlstate 42883)
正确答案
您能否确认您是否启用了该扩展程序?只需将服务器加入 psql 会话并使用 \dx
命令列出扩展即可:
tsdb=> \dx
list of installed extensions
name | version | schema | description
---------------------+---------+------------+-------------------------------------------------------------------
plpgsql | 1.0 | pg_catalog | pl/pgsql procedural language
timescale_analytics | 0.2 | public | timescale_analytics
timescaledb | 2.2.0 | public | enables scalable inserts and complex queries for time-series data
...
或者只是尝试提前启用扩展:
CREATE EXTENSION IF NOT EXISTS timescaledb;
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持编程网!更多关于Golang的相关知识,也可关注编程网公众号。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341