Oracle Replication Resource Page
Oracle Replication Resource Page
Jump to: Oracle to SQL Server Replication Demo / Oracle Replication FAQs / Oracle Replication Case Study
Oracle to Oracle Replication
Video: 10 Minute Oracle Replication Demo
You think you have to use command-line only tools to set up Oracle to Oracle replication? Think again – not so with HVR!
This recorded demonstration shows real-time replication from a very busy Oracle system on Linux as the source, to Oracle on Windows as the target. The source system uses ASM to store database files which is transparent to HVR. Likewise, an Oracle RAC database, or Exadata system for that matter, would be equally straightforward to support for HVR. HVR performs all steps in this demonstration including DDL generation for the target tables, initial load and ongoing synchronization. And as a bonus the demo includes maintenance tasks and statistics.
Video: 10 Minute Oracle to SQL Server Replication Demo
This recorded demonstration shows HVR Software’s data integration solution. The demo starts with software download and all the way through installation to getting a first working real-time replication scenario setup between an Oracle source database and a SQL Server destination.
- What versions of Oracle Database does HVR support?
- Oracle Database 9.2 and above are supported by HVR.
- What edition of the Oracle Database does HVR support?
- HVR supports all editions of the Oracle Database, i.e. Express Edition, Standard Edition, Standard Edition One, and Enterprise Edition.
- Does HVR support Oracle RAC (Real Application Clusters) and ASM (Automatic Storage Manager)?
- Yes, HVR supports all combinations of versions and editions, clustered and non-clustered, with the many options to store database files.
- Does HVR support Oracle Exadata as a source and target?
- Yes, from HVR’s perspective Oracle Exadata is an Oracle RAC on Linux environment.
- What operating systems does HVR support for Oracle Capture and integration?
- Linux, Windows, Solaris, AIX and HP-UX, both on physical and virtual environments.
- How does HVR connect to the Oracle Database?
- HVR relies on Oracle Client libraries to connect to the Oracle Database, and to ASM if it is used. To establish the connection HVR requires access to Oracle Client libraries. With that HVR supports connections to a local database and remote connections using Oracle’s TNS. For a RAC environment a connection can be made through the SCAN listener.
- Can HVR be set up to be highly available in an Oracle RAC environment?
- Yes, HVR services can be enrolled in Oracle Clusterware in order to be highly available in a RAC environment.
- Does HVR support pluggable databases?
- Yes, HVR can be used for log-based change data capture from and delivery into pluggable databases, as well as of course traditional non-pluggable database.
- How does HVR perform transactional data capture from the Oracle Database?
- HVR directly accesses the Oracle Database transaction logs on the file system, including when the data resides in ASM. In rare cases HVR may (transparently) retrieve data from the database using an SQL statement.
- Does HVR support Oracle Transparent Data Encryption?
- Yes, HVR integrates with the Oracle Wallet and supports all flavors of Transparent Data Encryption in Oracle.
- Do I have to install HVR on the Oracle Database server(s)?
- For optimum performance, HVR recommends a local installation on the Oracle Database server. However, depending on the setup, there are options for remote capture on a different server running the same operating system using remote TNS connects, or file sharing e.g. using NFS. HVR also supports a so-called archive log only mode to run capture on a different server that does not run any database processing.
- What are the minimum requirements to run HVR on an Oracle Database?
- At the database level the DBA must enable minimal supplemental logging using an alter database statement. In addition, HVR will create supplemental log groups on all tables that will be replicated in order to capture at least the primary key columns for updates. The HVR solution connects to the database using a database user account with elevated privileges.
- Can HVR run change data capture on a standby database?
- Yes, HVR can run directly on a data guard physical standby database. The physical standby can be an active standby database but doesn’t have to be. Note that for the initial load (so-called refresh in HVR) HVR will have to run against the primary database if the standby is not open for read-only. Also, supplemental logging has to be enabled on the primary database.
- Does HVR provide an archive log only capture mode?
- Yes, HVR can be run on a separate server (or virtual machine) in an archive log only mode with archives copied to the server or made accessible through a file share. Note the operating system on the capture machine must match the database operating system, and supplemental logging has to be enabled through a connection to the actual source database. Also, the initial load has to be performed directly from the source database.
- How does HVR ensure that no changes are lost when capturing from an Oracle Database?
- On the capture side HVR will position a capture process, per thread, to a position in the transaction log based on the initialization time. From the starting point forward HVR will capture any changes against the tables that are part of the setup. Following the initial positioning the capture process keeps track of the log sequence number of the oldest open transaction it was tracking, and the relative byte address within that. If the capture is restarted for whatever reason then HVR simply goes back to the point in the logs where it left off when it last checkpointed. This type of recovery is fundamental to HVR. On the integration side, HVR uses a state table to ensure recoverability. As part of every transaction HVR applies to the target database it will process an update to the state table. In case of any interruptions, HVR will rely on the state table in the destination database, and the fact that Oracle performs transactional processing, to ensure not change are lost and changes are not applied more than once.
- Does HVR support active/active replication between multiple Oracle Databases?
- Yes, by default HVR will not capture changes applied by HVR, and with that setting up active/active replication is straightforward. A quick video on how to setup active/active replication on Oracle is here: https://www.hvr-software.com/resource/setup-multi-active-active-environment/
- What Oracle data types does HVR support?
- HVR supports almost all scalar data types through log-based change data capture, including large objects (CLOB, NCLOB and BLOB). Data types that are not natively supported (including XML data types, Spatial and user-defined data types) can typically be included in the replication using a capture expression to retrieve the data through a SQL expression.
- Does HVR support DDL replication out of an Oracle Database?
- Yes, HVR supports DDL replication but only DDL against tables, and changes to the primary key. Other DDL like secondary indexes, triggers, and DDL related to the creation of other database objects like PL/SQL stored objects, data types, users, tablespaces etc. is ignored. With the changes captured HVR supports delivery of the DDL changes in a heterogeneous environment i.e. against any of the supported targets, even if there are transformations in the setup.
- What database objects does HVR replicate?
- At present HVR only supports tables and their primary keys, and database sequences. Any other database objects are ignored during replication.
- Can HVR capture changes from a view?
- No, changes to the view are recorded against the underlying tables that make up the view definition. In order to capture changes against a view you should replicate the underlying tables, and re-create the view on the target database. HVR does support replication of changes against a materialized view given the materialized view is implemented using its own table.
- Why would I use HVR instead of Oracle Data Guard?
- Oracle Data Guard is included with the Enterprise Edition Database, providing a disaster recovery solution for the Oracle Database. With that an Oracle Data Guard standby database – in physical standby mode which is the most commonly used mode – has to be the same version of the source database. Also, the entire database is replicated and there is no flexibility for any transformations, or to replicate only one schema or a subset of the tables from the database. However all database objects are duplicated. The Data Guard destination database is however closed for DML and unless the extra-paid option for Active Data Guard is in place there is not even read-only access on the destination database. HVR on the other hand provides logical database replication with the ability to filter tables, columns and even rows, as well as the ability to deliver changes in a heterogeneous environment. The target database for data replication is always open for DML and DDL, so for example any requirement to implement a custom indexing strategy can be implemented on the HVR target database. Also, HVR is not restricted to the Enterprise Edition database but also supports all other Oracle Database editions.
- Why would I use HVR instead of Oracle GoldenGate?
- Oracle GoldenGate is Oracle’s data replication technology. It is a very powerful data replication solution similar to HVR’s that comes at a significant cost. Recent versions of Oracle GoldenGate use integrated components in the database which means that bug fixes or enhancements often require a database patch. With similar Change Data Capture capabilities and richer support for heterogeneous environments, HVR is generally more cost-effective than Oracle GoldenGate. In addition, the HVR solution provides powerful capabilities to perform table creation (in a heterogeneous environment), initial data load (again heterogeneously), compare/repair, as well as a graphical user interface an automatic monitoring, all in a single user-interface. Oracle provides products for data integration and management, but they are all different, not necessarily integrated but separately priced, tools and options (Data Integrator for heterogeneous initial loads, Veridata for compare/repair, Enterprise Manager plugin for graphical monitoring, and GoldenGate Studio for a GUI on top of Oracle GoldenGate).
- Can I filter tables when replicating from the Oracle Database?
- Yes, HVR can be set up to replicate a subset of the tables from the Oracle Database. Even better, per table a subset of the columns can be replicated, and even a subset of the rows can be replicated. In addition, extra columns can be defined with values populated during the replication.
39 Geographically Distributed Oracle Databases
Challenge: Nigeria’s tax administration system – Standard Integrated Government Tax Administration System (SIGTAS) – is an integrated information system that automates the administration of taxes and licenses. Built by CRC Sogema in Canada, this software is designed to meet the needs of developing countries that wish to increase their control over state revenues. It is critical that FIRS keep information about taxpayers up-to-date and synchronized across all of Nigeria. Normally, one central tax database would be sufficient. But Nigeria’s large geographical distances and limited WAN infrastructure mean distributed databases are required.
On top of that, FIRS must deal with frequent power outages and slow, sometimes inaccessible wide area networks (WANs) connecting the different tax districts. To address these demands, FIRS installed a local SIGTAS database in each tax district. However, it needed to reflect changes of information in one tax district to the other districts in real-time to ensure a consistent and reliable tax system.
Solution: Bi-Directional Oracle Replication
Nigeria’s SIGTAS infrastructure consists of 39 Oracle databases spread over 37 tax districts. HVR’s bi-directional real-time data integration with collision resolution allows tax information to be shared instantly among all of Nigeria’s tax districts.
HVR was also used to set up a hot-standby database as part of the tax administration’s High Availability strategy. Because HVR’s management console delivers a single point of control, it streamlines the dataflow across all of the databases and tax districts managed by the SIGTAS system.
Result: High Resilience. Efficient Data Transmission across Oracle Databases
HVR is very resilient to connectivity and database availability issues. When power outages occur or network connections are temporarily broken, HVR simply picks up replication where it left off as soon as service is restored and systems become accessible. In addition, HVR provides extremely efficient data transport over Nigeria’s restricted WAN. The built-in compression and limited use of network round-trips makes HVR an ideal solution for FIRS’ geographical replication needs. Nigeria takes advantage of HVR’s hub and spoke architecture option to ensure that the environment is easy to manage and maintain.
Need to replicate to and from Oracle from Other Sources?
The following are platforms HVR supports. Oracle is supported as a source and a target.
|Source and Target||Target Only|
|Azure SQL||HANA||Vector||Azure SQL DW|
|DB2 LUW||Azure SQL||Matrix|
|DB2 iSeries||Amazon RDS|