Skip to main content
The Oracle Source Connector is an advanced tool designed to synchronize Oracle databases with Popsink efficiently and in real-time. It enables the real-time transfer of data, ensuring that the latest database changes are mirrored to the target systems. This capability is crucial for maintaining up-to-date business intelligence, enabling real-time analytics, and enhancing operational workflows.

Compatible versions

Oracle 12c and 11g are not supported. On 23ai and 26ai, capture is available through LogMiner only — XStream is validated on 19c and 21c.

Prerequisites

Before deploying the Oracle Source Connector, certain prerequisites must be met to ensure a smooth integration process:
  1. Allowlisting Popsink’s IP address: Ensure that Popsink’s egress IP is allowed through the database firewall, so communication between the Oracle database and Popsink is uninterrupted. The per-region addresses are listed in Egress IP addresses.
  2. Database Log Mode Configuration: The Oracle database Archive Mode should be set to ArchiveLog.
  3. Supplemental Logging: Supplemental Logs should be enable on the source you wish to replicate. This can me done at Database or Table Level :
    • At Database Level
    • At Table Level
    Note: If using AWS RDS, additional steps may be required. Please consult the relevant AWS RDS documentation and do feel free to reach out for help.
These three prerequisites apply to every capture adapter. XStream Out has additional requirements, described in XStream Out configuration.

Choosing a capture adapter

The connector can read changes in three different ways. All three produce the same events on the Popsink side — they differ in what they cost the source database and in what they require from your DBA.
LogMiner is the adapter every Oracle connector runs today. LogMiner unbuffered and XStream are being rolled out — get in touch with Popsink before you plan a migration to either one, so we can confirm availability on your data plane and size the change with you.
XStream is a licensed Oracle GoldenGate feature. Using it without a GoldenGate licence is a licence violation — confirm your entitlement with Oracle before enabling it. On managed services such as Amazon RDS for Oracle, check with your provider that DBMS_XSTREAM_ADM and outbound servers are available on your instance class.
The adapter is chosen when the connector is created. LogMiner records its position as an SCN, while XStream records it as an LCR position, so moving an existing connector to or from XStream loses its position and requires a re-seed. Switching between the two LogMiner adapters is safe.

Required Permissions

Although you could use a superuser, we do recommend setting up dedicated users for security reasons. The user account that the Oracle Source Connector utilizes must have sufficient privileges. The following SQL statements outline the necessary permissions for both LogMiner adapters:
Replace {username} with the actual username being used for the connection. If you selected the XStream adapter, grant the privileges described in XStream Out configuration instead — the DBMS_LOGMNR and LOGMINING grants above are not needed.

XStream Out configuration

This section is only relevant if you chose the XStream adapter. Everything here is done by your DBA on the source database, before the connector is created. Popsink connects to the outbound server you create here; the Oracle Instant Client and XStream libraries the connector needs are part of the Popsink image, so there is nothing to install on your side. The examples use two accounts, following Oracle’s own separation of duties:
  • an XStream administrator (c##popsinkadmin) that creates and owns the outbound server,
  • the connect user (c##popsinkuser) that Popsink authenticates as and that attaches to the outbound server.
On a non-CDB database, drop the c## prefix and the CONTAINER=ALL clauses.

1. Enable GoldenGate replication

XStream requires the GoldenGate replication parameter, alongside the ArchiveLog mode and supplemental logging already covered in the prerequisites.

2. Create the XStream administrator

3. Create the connect user

This is the user whose credentials you enter in the Popsink form.

4. Create the outbound server

Connect as the XStream administrator — to the CDB root on a multitenant deployment — and create one outbound server per connector. List the schemas or tables you intend to replicate; the outbound server only forwards changes for what it captures, so it acts as a first, server-side filter.
Then hand the outbound server to the connect user, so Popsink can attach to it:
On a multitenant database, the outbound server lives in the CDB root while the tables live in a PDB. Give Popsink the PDB in the connector form, and make sure the schemas you listed above are the ones in that PDB.

5. Verify the setup

The outbound server must exist, be attached to the connect user, and be in a running state before the connector is created. Popsink’s Check Credentials step runs these checks for you and reports a clear error if the outbound server is missing or disabled.

Steps

Go to: Sources -> Create New then select the Oracle connector and Continue In the Credentials sections fill in the required information.

host

  • Description: The hostname or IP address of the Oracle database server.
  • Type: string
  • Example: oracle-db-server.example.com

port

  • Description: The port number on which the Oracle database server is listening.
  • Type: integer
  • Default: 1521 (default port for Oracle database)
  • Example: 1521

user

  • Description: The username used to connect to the Oracle database.
  • Type: string
  • Example: popsink_user

password

  • Description: The password associated with the specified user for authentication.
  • Type: string
  • Example: p@ssw0rd123

service_name or sid

Provide exactly one of the two:
  • service_name: The Oracle service name to connect to.
    • Type: string
    • Example: ORCLPDB1
  • sid: The Oracle System Identifier, for legacy databases that are not service-name addressable.
    • Type: string
    • Example: ORCL

Advanced Options

Connecting through an SSH Tunnel

If the database is only reachable through a bastion host, enable SSH Tunnel and provide: The Host and Port above stay as the database is addressed from the bastion. For key generation, bastion hardening and the other connectivity options (IPsec VPN, Tailscale), see Tunnels and private connectivity.

Table Selection

After a successful credential check, pick the tables to replicate from the discovered list. The selection is stored as a comma-separated whitelist in SCHEMA.TABLE format. With the XStream adapter, this selection is applied on top of what the outbound server already captures: a table that the outbound server does not capture never reaches the connector, whatever you select here. You can use Check Credentials at any moment to verify the validity of your inputs. Once the validity check has passed, the next step is the standard Informations page where you may give the connector a name and select which of your teams should own this connector. Create the connector and you are now done. The connector may take a few minutes to synchronize with the source database.

Conclusion

The Oracle Source Connector is an essential component for creating a reliable data pipeline between Oracle databases and Popsink. By following the guidelines provided in this document, you can ensure a successful setup and enjoy a robust, real-time data integration experience.