暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

删除的分区能够通过Flashback进行闪回吗?

原创 Eygle 2019-03-19
2016

问题描述

通过 DROP 删除的分区,能够通过 Flashback Drop 闪回吗?

专家解答

在Oracle数据库中,单个删除的分区并不会进入回收站,全表删除的分区才可能和全表一起放入回收站。这是因为单个分区删除之后,是无法通过简单的闪回加入原分区表中,既然无法保证一致性,这个分区就不会进入回收站中。

以下这个测试展示了这个过程:

SQL> select * from v$version;
BANNER           CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production   0
PL/SQL Release 12.2.0.1.0 - Production        0
CORE 12.2.0.1.0 Production         0
TNS for Linux: Version 12.2.0.1.0 - Production       0
NLSRTL Version 12.2.0.1.0 - Production        0

SQL> CREATE TABLE enmotech (
2 PartID  integer  not null,
3 CretTm  date  not null,
4 PartCD  varchar2(2) not null
5 ) partition by list (partcd) automatic (
6 partition pBJ values ('BJ'),
7 partition pCD values ('CD'),
8 partition pGZ values ('GZ'),
9 partition pSH values ('SH')
10 );
Table created.

SQL> insert into enmotech values (1, sysdate, 'KM');
1 row created.

SQL> select partition_name from user_tab_partitions
2 where table_name = 'ENMOTECH';
PARTITION_NAME
--------------------------------------------------------------------
PBJ
PCD
PGZ
PSH
SYS_P281

SQL> alter table enmotech drop partition SYS_P281 purge;
alter table enmotech drop partition SYS_P281 purge
*
ERROR at line 1:
ORA-14048: a partition maintenance operation may not be combined with other operations

SQL> alter table enmotech drop partition PSH;
Table altered.

SQL> select * from user_recyclebin;
no rows selected

SQL> drop table enmotech;
Table dropped.

SQL> select object_name,original_name,type from user_recyclebin;
OBJECT_NAME     ORIGINAL_NAME  TYPE
---------------------------------------- -------------------- -------------------------
BIN$TflQLiTmWX7gUwo4qMBX+A==$0   ENMOTECH  TABLE
BIN$TflQLiTmWX7gUwo4qMBX+A==$0   ENMOTECH  Table Partition
BIN$TflQLiTmWX7gUwo4qMBX+A==$0   ENMOTECH  Table Partition
BIN$TflQLiTmWX7gUwo4qMBX+A==$0   ENMOTECH  Table Partition
BIN$TflQLiTmWX7gUwo4qMBX+A==$0   ENMOTECH  Table Partition

很多时候,想当然的结果可能并不可信,实践操作方能出真知,多动手,是技术人的王道。

参考:

http://www.eygle.com/archives/2017/04/drop_partition_recyclebin.html

最后修改时间:2019-03-20 21:13:22
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论