在Oracle Database 12.1中,闪回数据库操作仅限于 CDB ,Oracle Database 12.2支持 CDB 与 PDB 数据库的闪回。

PDB 的还原点种类:
1. normal restore point:          create restore point pdb1_point1;
2. guaranteed restore point:      create restore point pdb1_point1 guarantee flashback database;
-- 在需要设定干净还原点的 PDB 容器下 shutdown immediate , 然后在创建干净还原点。
3.1 clean normal restore point:    create clean restore point cdb1_before_changes;
3.2 clean guaranteed restore point:create clean restore point cdb1_before_changes guarantee flashback database;
补充:PDB 中执行,如果是 CDB 中执行的话,在对应代码后面多添加 for pluggable database pdb_name 指定PDB名称

PDB 中支持的闪回数据库方式:
1.还原点
2.scn
3.timestamp

演示操作:
1、首先,我们开启数据库闪回功能:
[oracle@12c01 ~]$ mkdir -p /home/oracle/fast_recovery_area
SQL>alter system set db_recovery_file_dest_size=10G;
SQL>alter system set db_recovery_file_dest='/home/oracle/fast_recovery_area' scope=both;
SQL>shutdown immediate;
SQL>startup mount;
SQL>alter database archivelog;
SQL>alter database flashback on;
SQL>alter database open;
SQL>select flashback_on from v$database;
FLASHBACK_ON
------------------
YES
闪回日志保留的数量是受参数DB_FLASHBACK_RETENTION_TARGET控制的,该参数表示保留时间(分钟),默认为1天。
-- 查询闪回日志保留天数,如果有必要,就修改保留时间。
SQL>show parameter db_flashback_retention_target
NAME     TYPE VALUE
------------------------------------ ----------- -------------------
db_flashback_retention_target     integer1440
查看当前数据库实例状态:
show pdbs
    CON_ID CON_NAME  OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED  READ ONLY  NO
3 PDB01  READ WRITE NO
SQL>alter session set container=pdb01;
模拟业务
SQL> select current_scn from v$database;

CURRENT_SCN
-----------
    1628859
SQL> create table c##andy.pdbfla (id int);

Table created.

SQL> insert into c##andy.pdbfla values(1);

1 row created.

SQL> commit;

Commit complete.
SQL>alter session set container=cdb$root;
SQL>create table c##andy.cdbfla (id int);
SQL>insert into c##andy.cdbfla values(1);
SQL>commit;
下面是local undo模式下 PDB 闪回数据库操作步骤:

SQL>alter pluggable database pdb01 close;

SQL> flashback pluggable database pdb01 to scn 1628859;
Flashback complete.
SQL>alter pluggable database pdb01 open resetlogs;
Pluggable database altered.
SQL> select * from c##andy.cdbfla;
ID
----------
1
SQL> alter session set container=pdb01;
SQL> select * from c##andy.pdbfla;
ORA-00942: table or view does not exist
说明:可以看不到 PDB 级别的数据库闪回不影响 CDB 的记录。
_______________________________________
补充:
如果使用的shared undo模式下 PDB 闪回数据库,语法有点不同,就是你需要制定辅助实例的位置。
SQL>flashback pluggable database pdb_name to scn the_scn auxiliary destination '/XXX/auxiliary';
SQL>flashback pluggable database pdb_name to restore point restore_point auxiliary destination '/XXX/auxiliary';

Oracle 12c 新特性之 PDB 级别闪回数据库的更多相关文章

  1. Oracle 12C 新特性之 PDB热克隆(本地克隆、远端异机克隆)

    说明:版本12.2.0.1 12c r1版本中 clone 一份PDB源库需要打开在read only只读模式 , 在12c r2版本中引入了local undo mode, 源PDB在read/wr ...

  2. Oracle 12c新特性

    转载自:Oracle 12c新特性(For DBA) 一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性 ...

  3. Oracle 12C 新特性之扩展数据类型(extended data type)

    Oracle 12C 新特性-扩展数据类型,在12c中,与早期版本相比,诸如VARCHAR2, NAVARCHAR2以及 RAW这些数据类型的大小会从4K以及2K字节扩展至32K字节.只要可能,扩展字 ...

  4. ORACLE 12C新特性——CDB与PDB

    Oracle 12C引入了CDB与PDB的新特性,在ORACLE 12C数据库引入的多租用户环境(Multitenant Environment)中,允许一个数据库容器(CDB)承载多个可插拔数据库( ...

  5. Oracle 12C 新特性之 db默认字符集AL32UTF8、PDB支持不同字符集

    一. db默认字符集AL32UTF8Specify the database character set when you create the database. Starting from Ora ...

  6. Oracle 12c新特性(For DBA)

    一: Multitenant Architecture (12.1.0.1)      多租户架构是Oracle 12c(12.1)的新增重磅特性,内建的多分租(Multi-tenancy),一个容器 ...

  7. Oracle 12C 新特性之 恢复表

    RMAN的表级和表分区级恢复应用场景:1.You need to recover a very small number of tables to a particular point in time ...

  8. Oracle 12C 新特性 - “可插拔数据库”功能

    Oracle 12C加入了一个非常有新意的功能"可插拔数据库"特性,实现了数据库(PDB)在"容器"(CDB)上的拔功能,既能提高系统资源的利用率,也简化大面积 ...

  9. Oracle 12c新特性之——TABLE ACCESS BY INDEX ROWID BATCHED

    Oracle12c开始,我们在获取SQL语句的执行计划时,也会经常看到"TABLE ACCESS BY INDEX ROWID BATCHED"操作,那么,这个操作到底是什么意思呢 ...

随机推荐

  1. WiX 中XML引用变量说明

    WiX 安装工程中的XML 文件所引用变量说明: The WiX project supports the following project reference variables: Variabl ...

  2. 基于SQLAIchemy的Flask目录

    预先知识 flask的基本使用 快速搭建开发的目录,以后我们在用Flask开发项目的时候可以直接用这个目录,不需要再自己创建. flask-sqlalchemy flask-sqlalchemy相当于 ...

  3. Tensorflow 初级教程(二)

    一.Tensorflow 扩展功能 1.自动求导 2.子图的执行 3.计算图控制流 4.队列/容器 Tensorflow 自动求导 当计算tensor C关于tensor W的梯度时,会先寻找从W到C ...

  4. 了解CentOS服务器的基本信息

    简单描述了如何从CPU.内存.硬盘性能.负载方面去了解自己工作的服务器性能.这个很重要,必须了解机器的方方面面才能提高在自己运维工作效率. 一.查看linux服务器cpu详情 查看物理cpu个数: [ ...

  5. ABAP文件选择框函数

    因为WS_FILENAME_GET已经被废弃所以使用接口CL_GUI_FRONTEND_SERVICES来实现本地文件的选择. 用接口类CL_GUI_FRONTEND_SERVICES实现的方法 CA ...

  6. (转)linux访问windows共享文件夹的两种方法

    有时需要在linux下访问window的共享文件,可以使用mount挂载或使用samba连接. 1,mount挂载 $ mkdir windows 将共享文件夹挂载到windows文件夹: mount ...

  7. ERROR 2003 (HY000): Can't connect to MySQL server on 'ip地址' (110)

    用windows能远程连接数据库服务器,用ubuntu就报错,怎么都连不上,报这个错ERROR 2003 (HY000): Can't connect to MySQL server on 'ip地址 ...

  8. HackerRank - flipping-the-matrix 【数学】

    题意 一个矩阵中 每一行 每一列 都可以倒置 在不断进行倒置后 求 左上的那个 N * N 矩阵 的和 最大为多少 思路 M = 2 * N 通过 倒置特性 我们可以发现,最左上的那个矩阵 第 [I] ...

  9. 【leetcode刷题笔记】3Sum Closest

    Given an array S of n integers, find three integers in S such that the sum is closest to a given num ...

  10. RabbitMQ之Exchange

    交换机的作用: 生产者发送消息不会向传统方式直接将消息投递到队列中,而是先将消息投递到交换机中,在由交换机转发到具体的队列,队列在将消息以推送或者拉取方式给消费者进行消费,这和我们之前学习Nginx有 ...