anchor.diff:  [[oracle-overview]]
   == Overview
   
  -{prodname} ingests change events from Oracle using the https://docs.oracle.com/database/121/XSTRM/xstrm_intro.htm#XSTRM72647[XStream API].
  -In order to use this API and hence this connector, you need to have a license for the GoldenGate product
  +{prodname} ingests change events from Oracle using the https://docs.oracle.com/database/121/XSTRM/xstrm_intro.htm#XSTRM72647[XStream API] or directly by Log Miner.
  +In order to use the XStream API, you need to have a license for the GoldenGate product
   (though it is not required that GoldenGate itself is installed).
  -We are currently exploring alternatives to using XStream for a future {prodname} release, e.g. based on LogMiner and/or alternative solutions.
  -Please track the {jira-url}/browse/DBZ-137[DBZ-137] JIRA issue and join the discussion if you are aware of potential other ways for ingesting change events from Oracle.
   
   [[setting-up-oracle]]
   == Setting up Oracle
  
positive.code: ALTER TABLE inventory.customers ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;
  ----
  
  === Creating an XStream Admin User and a User For the Connector
  
  Create an XStream admin user in the container database (used per Oracle's recommendation for administering XStream):
  
  
negative.code: exit;
  ----
  
  ==== Log Miner
  
  Create Log Miner user (used by the {prodname} connector to connect to Oracle):
  
  [source,indent=0]
  ----
  sqlplus sys/top_secret@//localhost:1521/ORCLCDB as sysdba
  CREATE TABLESPACE logminer_tbs DATAFILE '/opt/oracle/oradata/ORCLCDB/logminer_tbs.dbf'
    SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
  exit;
  ----
  
  [source,indent=0]
  ----
  sqlplus sys/top_secret@//localhost:1521/ORCLPDB1 as sysdba
  CREATE TABLESPACE logminer_tbs DATAFILE '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/logminer_tbs.dbf'
    SIZE 25M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
  exit;
  ----
  
  [source,indent=0]
  ----
  sqlplus sys/top_secret@//localhost:1521/ORCLCDB as sysdba
  
  CREATE USER c##logminer IDENTIFIED BY lm
    DEFAULT TABLESPACE logminer_tbs
    QUOTA UNLIMITED ON logminer_tbs
    CONTAINER=ALL;
  
  GRANT CREATE SESSION TO c##logminer CONTAINER=ALL;
  GRANT SET CONTAINER TO c##logminer CONTAINER=ALL;
  GRANT SELECT ON V_$DATABASE to c##logminer CONTAINER=ALL;
  GRANT FLASHBACK ANY TABLE TO c##logminer CONTAINER=ALL;
  GRANT LOGMINING TO c##logminer CONTAINER=ALL;
  GRANT LOCK ANY TABLE TO c##logminer CONTAINER=ALL;
  
  exit;
  ----
  
  === Create an XStream Outbound Server
  
  [NOTE]
  ====
  If you're using the Log Miner implementation, this step is not necessary.
  ====
  
  Create an https://docs.oracle.com/cd/E11882_01/server.112/e16545/xstrm_cncpt.htm#XSTRM1088[XStream Outbound server]
  (given the right privileges, this may be done automatically by the connector going forward, see {jira-url}/browse/DBZ-721[DBZ-721]):
  