A newer version of this documentation is available.
View Latest (v2.2)

Oracle XStream Agent

Static

Introduction

The Oracle Xstream agent provides Change Data Capture (CDC) capabilities using Oracle’s native Xstream APIs. This approach offers enterprise-grade CDC functionality similar to Oracle GoldenGate (as they shared the same underlying architecture / APIs), making it ideal for high-throughput, real-time data replication scenarios.

Key Features

  • Native integration with Oracle’s transaction logs

  • Support for both single-tenant and multi-tenant (pluggable database) infrastructures

  • Real-time change data capture

  • Minimal impact on source database performance

  • Built-in JDBC driver connection

Supported Versions

The Oracle XStream agent requires:

  • Oracle Database version 11.2.0.4 (11.2g) or higher

  • Support for both single-tenant and multi-tenant (pluggable database) infrastructures

  • Oracle Database Enterprise edition;

  • Oracle GoldenGate Middleware (Xstream APIs) licensed;

Connecting with tnsnames

Gluesync supports Oracle environments that rely on tnsnames.ora. You can configure the agent in two ways:

Custom connection string

Within the agent configuration wizard, open the //Advanced// section and paste your custom JDBC string. Start from the TNS entry you already manage and build a full connection string similar to:

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=your_host)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=your_service_name)))

Use this option whenever you must reuse an existing tnsnames.ora definition or need advanced Oracle descriptors.

Connection via SCAN (Single Client Access Name)

Alternatively, you can connect through Oracle SCAN. Create a DNS record that resolves to your SCAN listeners. Those listeners will redirect each session to the least loaded instance that exposes the requested service.

When SCAN listeners are active and configured correctly, you do not need the tnsnames.ora file. Fill the standard Gluesync fields instead:

  • Host: SCAN DNS address (for example, //rac-cluster-scan.example.com)

  • Port: Listener port (default 1521)

  • Service name: Provide the service name exposed by the cluster (connections must use SERVICE_NAME)

Refer to Oracle’s Real Application Clusters documentation for SCAN planning and prerequisites:

Platform supported features

Feature Support Notes

Target role

Writes to Oracle via the built-in JDBC driver (Enterprise edition).

Source role

Captures transaction log changes through native XStream APIs.

Snapshots

Supports snapshot tasks before CDC to seed target systems.

CDC

Real-time CDC using XStream inbound/outbound servers.

CDC type

Oracle XStream (transaction logs)

See Oracle XStream documentation.

User defined data types

Supports user defined data types.

Bulk load

This agent does not currently support bulk loading.

Source persisted internal cache

Agent maintains local state to track LCRs (Logical Change Records), no persisted local cache.

Target persisted internal cache

N/A

Writes flow directly through JDBC; no extra caching.

Driver / connector

Built-in JDBC driver + XStream APIs

Requires Oracle Enterprise + GoldenGate licensing.

Chains

N/A

Not supported.

Truncate operation support (reading)

CDC stream detects TRUNCATE operations from redo logs.

Truncate operation support (writing)

Supports Core Hub “TRUNCATE before snapshot” option.

Setup Options

Choose your setup guide based on your Oracle database infrastructure:

Additional Resources

Video Tutorial

Real time data integration between Oracle 19c to PostgreSQL 16.4