DBMS_LOGMNRThe DBMS_LOGMNR package contains procedures used to initialize the LogMiner tool and to begin and end a LogMiner session.
This chapter contains the following topics:Using DBMS_LOGMNR Security Model Constants Operational NotesSummary of DBMS_LOGMNR SubprogramsDBMS_LOGMNR LogMiner allows you to make queries based on actual data values. For instance, you could issue a query to select all updates to the table scott.emp or all deletions performed by user scott. You could also perform a query to show all updates to scott.emp that increased sal more than a certain amount. SUCh data can be used to analyze system behavior and to perform auditing tasks. The DBMS_LOGMNR package contains procedures used to initialize the LogMiner tool. You use these procedures to list the redo log files to be analyzed and to specify the SCN or time range of interest. After these procedures complete, the server is ready to process SQL SELECT statements against the V$LOGMNR_CONTENTS view. The data in redo log files is especially important for recovery, because you can use it to pinpoint when a database became corrupted.You can then use this information to recover the database to the state just prior to corruption. This chapter discusses the following topics: DBMS_LOGMNR Constants Extracting Data Values From Redo Log Files Example of Using DBMS_LOGMNR Summary of DBMS_LOGMNR Subprograms DBMS_LOGMNR ConstantsThe following sections describe the constants for the DBMS_LOGMNR package. Constants for ADD_LOGFILE Options Flag Constants for START_LOGMNR Options Flag Extracting Data Values From Redo Log FilesLogMiner data extraction from redo log files is performed using two mine functions: DBMS_LOGMNR.MINE_VALUE and DBMS_LOGMNR.COLUMN_PRESENT, described later in this chapter. Example of Using DBMS_LOGMNRThe following example shows how to use the DBMS_LOGMNR procedures to add redo log files to a LogMiner session, how to start LogMiner, how to perform a select operation from V$LOGMNR_CONTENTS, and how to end a LogMiner session. For complete descriptions of the DBMS_LOGMNR procedures, see Summary of DBMS_LOGMNR Subprograms. EXECUTE DBMS_LOGMNR.ADD_LOGFILE(
LogFileName => '/Oracle/logs/log1.f',
Options => dbms_logmnr.NEW);
EXECUTE DBMS_LOGMNR.ADD_LOGFILE(
LogFileName => '/oracle/logs/log2.f',
Options => dbms_logmnr.ADDFILE);
EXECUTE DBMS_LOGMNR.START_LOGMNR(
DictFileName =>'/oracle/dictionary.ora');
SELECT sql_redo
FROM V$LOGMNR_CONTENTS
EXECUTE DBMS_LOGMNR.END_LOGMNR();
Summary of DBMS_LOGMNR SubprogramsTable 24-1 describes the procedures in the DBMS_LOGMNR supplied package. Subprogram Description "ADD_LOGFILE Procedure" Adds a file to the existing or newly created list of archive files to process. "START_LOGMNR Procedure" Initializes the LogMiner utility. "END_LOGMNR Procedure" Finishes a LogMiner session. "MINE_VALUE Function" This function may be called for any row returned from V$LOGMNR_CONTENTS to retrieve the undo or redo column value of the column specified by the column_name input parameter to this function. "COLUMN_PRESENT Function" This function may be called for any row returned from V$LOGMNR_CONTENTS to determine if undo or redo column values exist for the column specified by the column_name input parameter to this function. Table 24-1 DBMS_LOGMNR Package Subprograms