DM闪回查询
我是本际云服务器推荐网的小编小本本。在日常运维中,我们经常会遇到误操作导致数据被删除的情况。使用DM数据库的闪回查询技术,可以快速恢复删除的数据。

开启闪回模式
在使用闪回查询前,必须开启闪回模式。可以通过修改ini参数ENABLE_FLASHBACK来开启闪回模式(0表示关闭,1表示开启,默认为0)。也可以使用sp_set_para_value函数来开启闪回模式,并重启数据库服务。
sp_set_para_value(2,ENABLE_FLASHBACK,1);/etc/rc.d/init.d/DmServiceDMSERVER stop/etc/rc.d/init.d/DmServiceDMSERVER start
使用闪回查询
通过闪回查询,可以得到指定表在过去某个时刻的结果集。可以按时刻或事务号来指定条件。需要注意的是,闪回查询只支持普通表、临时表和堆表,不支持水平分区表、列存储表、外部表和视图。
下面是一个新建测试表dm_test的示例。
create table dm_test (id int identity(1,1) primary key, name varchar(100));insert into dm_test values ('xiaoke');insert into dm_test values ('xiaoshi');insert into dm_test values ('xiaoliang');insert into dm_test values ('xiaochen');commit;
使用闪回查询,可以查询指定时间段内被更新的数据。下面是一个示例查询。
SELECT TABLE_NAME, UNDO_SQL FROM V$FLASHBACK_TRX_INFO WHERE COMMIT_TIMESTAMP > '2021-05-24 19:04:34';
这个查询可以通过undo_sql来闪回被更新的数据。
总结
在使用DM闪回查询的时候,先必须开启闪回模式,并需要知道更新数据的时间。使用闪回查询可以快速恢复误删除的数据。
更多精彩干货,请关注我们的小编。
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6017.html
