Table of Contents

Search

  1. Preface
  2. Part 1: PowerExchange CDC Introduction
  3. Part 2: PowerExchange CDC Components
  4. Part 3: PowerExchange CDC Data Sources
  5. Part 4: Change Data Extraction
  6. Part 5: Monitoring and Tuning
  7. Appendix A: DTL__CAPXTIMESTAMP Time Stamps

CDC Guide for Linux, UNIX, and Windows

CDC Guide for Linux, UNIX, and Windows

Step 4. Define a CDC User and Grant User Privileges

Step 4. Define a CDC User and Grant User Privileges

Define an Oracle user that can run PowerExchange Oracle CDC with LogMiner. Then grant to this CDC user the specific Oracle system and object privileges that PowerExchange requires to extract change data from Oracle redo logs. You must also grant certain object privileges to the user who is responsible for creating and managing registrations and extraction maps for the Oracle source tables from the PowerExchange Navigator.
Oracle CDC User
As the Oracle CDC user, use an existing user who has the required privileges, or create a user and grant the required privileges to that user.
To create an Oracle CDC user and grant the required privileges, use the sample SQL in the Create_ORACAPT_user.sql file. You can edit the sample SQL, as needed, for your environment.
The following table identifies the system privileges to grant to the Oracle CDC user:
System Privilege Granted
Description
CONNECT
Required. Grant this privilege to perform Oracle CDC data extraction in real time and to run PowerExchange Logger tasks.
The Oracle CDC user needs only the CREATE SESSION privilege on the CONNECT role.
LOCK ANY TABLE
If you specify GENRLOCK=Y in the ORCL CAPI_CONNECTION statement of the dbmover.cfg file, either grant the LOCK ANY TABLE system privilege or grant the SELECT object privilege on each table that is registered for change data capture.
SELECT ANY TRANSACTION
Required. Grant this privilege to perform Oracle CDC data extraction in real time and to run PowerExchange Logger tasks.
The following table identifies the minimum object privileges to grant to the Oracle CDC user:
Object Name
Object Privilege
Source tables
If you specify GENRLOCK=Y in the ORCL CAPI_CONNECTION statement of the dbmover.cfg file, you must either grant the LOCK ANY TABLE system privilege or grant the SELECT object privilege on each table that is registered for change data capture.
PUBLIC.V$ARCHIVED_LOG
SELECT
PUBLIC.V$DATABASE
SELECT
PUBLIC.V$INSTANCE
SELECT
PUBLIC.V$LOGMNR_CONTENTS
SELECT
PUBLIC.V$NLS_PARAMETERS
SELECT
PUBLIC.V$PARAMETER
SELECT
PUBLIC.V$TRANSACTION
SELECT
SYS.DBA_LOG_GROUPS
SELECT
SYS.DBA_LOG_GROUP_COLUMNS
SELECT
SYS.DBMS_FLASHBACK
EXECUTE
SYS.DBMS_LOGMNR
EXECUTE
SYS.DBMS_LOGMNR_D
EXECUTE
PowerExchange Navigator User
The user who uses the PowerExchange Navigator to create and manage capture registrations must have certain SELECT privileges to create and manage registrations. If you want the user to be able to run the generated DDL that creates supplemental log groups at the end of registration, also grant the privilege that is specified in the Optional_GRANT_for_registrations.sql file.
Grant the following privileges to the PowerExchange Navigator user who creates and manages registrations:
  • To create capture registrations and perform other tasks in the PowerExchange Navigator, grant the following privileges:
    GRANT SELECT ON "PUBLIC"."V$PARAMETER" TO "
    registration_user
    "; GRANT SELECT ON
    table
    TO "
    registration_user
    "; <<Repeat for each table of CDC interest.
    Instead of granting SELECT on each table of interest, you can specify GRANT SELECT ON ANY TABLE for the
    registration user
    if your site security rules allow it.
  • To run the SQL for creating supplemental log groups at the end of registration, grant the following system privilege:
    GRANT ALTER ANY TABLE TO "
    registration_user
    ";
    If your site security rules do not allow this level of authority to be granted to the registration user, you can give the SQL file to your DBA. The DBA can then use the SQL to create the supplemental log groups.

0 COMMENTS

We’d like to hear from you!