53 lines
1.5 KiB
Plaintext
53 lines
1.5 KiB
Plaintext
|
postgres@loglab:/etc/postgresql/14/main$ psql
|
||
|
psql (15.2 (Ubuntu 15.2-1.pgdg20.04+1), server 14.7 (Ubuntu 14.7-1.pgdg20.04+1))
|
||
|
Type "help" for help.
|
||
|
|
||
|
postgres=# CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;
|
||
|
NOTICE: extension "timescaledb" already exists, skipping
|
||
|
CREATE EXTENSION
|
||
|
postgres=# SELECT extname FROM pg_extension WHERE extname = 'timescaledb';
|
||
|
extname
|
||
|
-------------
|
||
|
timescaledb
|
||
|
(1 row)
|
||
|
|
||
|
postgres=# SELECT create_hypertable('logs', 'timestamp');
|
||
|
ERROR: cannot create a unique index without the column "timestamp" (used in partitioning)
|
||
|
postgres=# SELECT
|
||
|
postgres-# i.relname AS index_name,
|
||
|
postgres-# a.attname AS column_name
|
||
|
postgres-# FROM
|
||
|
postgres-# pg_class t,
|
||
|
postgres-# pg_class i,
|
||
|
postgres-# pg_index ix,
|
||
|
postgres-# pg_attribute a
|
||
|
postgres-# WHERE
|
||
|
postgres-# t.oid = ix.indrelid
|
||
|
postgres-# AND i.oid = ix.indexrelid
|
||
|
postgres-# AND a.attrelid = t.oid
|
||
|
postgres-# AND a.attnum = ANY(ix.indkey)
|
||
|
postgres-# AND t.relkind = 'r'
|
||
|
postgres-# AND t.relname = 'logs'
|
||
|
postgres-# AND ix.indisunique IS TRUE;
|
||
|
index_name | column_name
|
||
|
------------+-------------
|
||
|
logs_pkey | id
|
||
|
(1 row)
|
||
|
|
||
|
postgres=# ALTER TABLE logs DROP CONSTRAINT logs_pkey;
|
||
|
ALTER TABLE
|
||
|
postgres=# CREATE UNIQUE INDEX logs_unique_id_timestamp ON logs (id, timestamp);
|
||
|
CREATE INDEX
|
||
|
postgres=# SELECT create_hypertable('logs', 'timestamp');
|
||
|
create_hypertable
|
||
|
-------------------
|
||
|
(3,public,logs,t)
|
||
|
(1 row)
|
||
|
|
||
|
postgres=# SELECT extname FROM pg_extension WHERE extname = 'timescaledb';
|
||
|
extname
|
||
|
-------------
|
||
|
timescaledb
|
||
|
(1 row)
|
||
|
|
||
|
postgres=# \q
|