For how many years have you been working
with physical servers that are starving your database of the memory
necessary to deploy important new performance features such as the Result
Cache, Memoptimize Pool, In-Memory Aggregation, In-Memory Column Store, and
Full Database Caching? Too long? Contact me to learn how to improve all
queries ... not just some queries.
This package contains procedures which get called during the import phase and export phase of point-in-time recovery (PITR).
During the export phase, EXP calls this package to obtain the text of 2 anonymous PL/SQL blocks. The first block goes at the front of the .dmp file, and the second block goes at the end.
In between the 2 blocks are the DDL commands created by EXP to reconstruct the dictionary for the tablespaces being PITR'd.
The emitted PL/SQL code contains calls to other procedures in this package. IMP must read each anonymous PL/SQL block from the .dmp file, collect it into a single contiguous memory buffer, and then parse and execute the PL/SQL block.
The parsed SQL statement (the PL/SQL anonymous block) must precisely the lines of text that were returned to EXP from this package, with no characters added or deleted.
The order in which the "emit" procedures should be called is in the source file header.
The exception shown at right demonstrates what happens when a procedure is called, manually, in the wrong sequence
dbms_pitr.selectBlock(blockId IN BINARY_INTEGER);
ERROR at line 1:
ORA-29301: wrong DBMS_PITR package function/procedure order
ORA-06512: at "SYS.DBMS_PITR", line 855
ORA-06512: at "SYS.DBMS_PITR", line 846
ORA-06512: at line 1
Informs the package that the caller intends to do point-in-time recovery on the specified tablespace. Must be called once for each tablespace in the recovery set.
It alter selected tablespace read only, also checks datafiles in the selected tablespace.