云数据库 GaussDB-闪回查询:使用示例

时间:2025-02-12 15:05:23

使用示例

  • 示例(需将undo_retention_time参数设置为大于0的值):
    gaussdb=# DROP TABLE IF EXISTS "public".flashtest;NOTICE:  table "flashtest" does not exist, skippingDROP TABLE--创建表flashtestgaussdb=# CREATE TABLE "public".flashtest (col1 INT,col2 TEXT) WITH(storage_type=ustore);CREATE TABLE--查询csngaussdb=# SELECT int8in(xidout(next_csn)) FROM gs_get_next_xid_csn();  int8in  ---------- 79351682(1 rows)--查询当前时间戳gaussdb=# select now();              now              ------------------------------- 2023-09-13 19:35:26.011986+08(1 row)--插入数据gaussdb=# INSERT INTO flashtest VALUES(1,'INSERT1'),(2,'INSERT2'),(3,'INSERT3'),(4,'INSERT4'),(5,'INSERT5'),(6,'INSERT6');INSERT 0 6gaussdb=# SELECT * FROM flashtest; col1 |  col2   ------+---------    3 | INSERT3    1 | INSERT1    2 | INSERT2    4 | INSERT4    5 | INSERT5    6 | INSERT6(6 rows)--闪回查询某个csn处的表gaussdb=# SELECT * FROM flashtest TIMECAPSULE  CS N 79351682; col1 | col2 ------+------(0 rows)gaussdb=# SELECT * FROM flashtest; col1 |  col2   ------+---------    1 | INSERT1    2 | INSERT2    4 | INSERT4    5 | INSERT5    3 | INSERT3    6 | INSERT6(6 rows)--闪回查询某个时间戳处的表gaussdb=# SELECT * FROM flashtest TIMECAPSULE TIMESTAMP '2023-09-13 19:35:26.011986'; col1 | col2 ------+------(0 rows)gaussdb=# SELECT * FROM flashtest; col1 |  col2   ------+---------    1 | INSERT1    2 | INSERT2    4 | INSERT4    5 | INSERT5    3 | INSERT3    6 | INSERT6(6 rows)--闪回查询某个时间戳处的表gaussdb=# SELECT * FROM flashtest TIMECAPSULE TIMESTAMP to_timestamp ('2023-09-13 19:35:26.011986', 'YYYY-MM-DD HH24:MI:SS.FF'); col1 | col2 ------+------(0 rows)--闪回查询某个csn处的表,并对表进行重命名gaussdb=# SELECT * FROM flashtest AS ft TIMECAPSULE CSN 79351682; col1 | col2 ------+------(0 rows)gaussdb=# DROP TABLE IF EXISTS "public".flashtest;DROP TABLE
support.huaweicloud.com/fg-gaussdb-cent-v8/gaussdb-48-0201.html