KingbaseES flashback drop table

KingbaseES 引入回收站功能,实现drop table操作的数据恢复。回收站功能默认关闭,参数名称:kdb_flashback.db_recyclebin。如果不允许一个删除的表进回收站,需要在drop 语句后面加上“PUGRE“X 选项。flashback 支持将一个已经删除到回收站中的表及相关对象闪回到删除之前状态。如果在当前schema 下已经存在同名的表,则闪回失败,需要使用rename to 选项指定一个新的表名。

举例如下:

1、开启参数

1
2
3
4
5
6
7
test=# alter system set kdb_flashback.db_recyclebin=on;
ALTER SYSTEM
test=# select pg_reload_conf();                         
 pg_reload_conf
----------------
 t
(1 row)

2、删除表

1
2
3
4
5
6
7
8
9
10
11
12
13
14
test=# drop table t_clob;
DROP TABLE
test=# select * from recyclebin;  
  oid   |      object_name      |    drop_time    | type 
--------+-----------------------+-----------------+-------
 534204 | t_clob                | 693305543707139 | TABLE
 534209 | pg_toast_534204_index | 693305543707039 | INDEX
(2 rows)
 
test=# select relname,reloptions from pg_class where relname like '%t_clob%';
               relname                |     reloptions     
--------------------------------------+---------------------
 BIN$$t_clob$$534204$$693305543707139 | {deletestatus=true}
(1 row)

3、恢复已删除的表

flashback table t_clob to before drop

4、清楚recyclebin

purge recyclebin

purge table t_clob

drop table t_clob purge

 

posted @   KINGBASE研究院  阅读(89)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示