Chat now with support
Chat with Support

SharePlex 12.0 - Administration Guide

About this Guide Conventions used in this guide Overview of SharePlex Run SharePlex Run multiple instances of SharePlex Execute commands in sp_ctrl Set SharePlex parameters Configure data replication Configure replication to and from a container database Configure named queues Configure partitioned replication Configure replication to a change history target Configure a replication strategy Configure DDL replication Configure error handling Configure data transformation Configure security features Assign SharePlex users to security groups Start replication on your production systems Monitor SharePlex Prevent and solve replication problems Repair out-of-sync data Tune the Capture process Tune the Post process Recover replication after Oracle failover Make changes to an active replication environment Apply an Oracle application patch or upgrade Back up Oracle data on the source or target Troubleshooting Tips Appendix A: Peer-To-Peer Diagram Appendix B: SharePlex environment variables

Initial Database Synchronization for PostgreSQL to PostgreSQL Replication

This section provides information about how initial synchronization of the database is performed when replicating data from PostgreSQL to PostgreSQL (cloud target databases).

You can set up an active replication between the following source and target platform combinations:

  • On-Prem Logical Source to Aurora Target

  • On-Prem Physical Source to Aurora Target

  • Azure Flexi Server Source to Aurora Target

  • Aurora Source to Azure Flexi Target

  • Aurora Source to On-Prem Target

To set up an active replication:

  1. Run the pg_setup utility on both the source and target servers to prepare the environment.

  2. Start SharePlex and execute the stop post command on the target server:

    sp_ctrl (pslrhel7linux01:4073)> stop post

    It ensures that even if a configuration file is not activated on the source, the Poster queue will be created but remain stopped.

  3. Close access to the source database for users.

  4. Activate the configuration file on the source.

    sp_ctrl> activate config <config_file_name>

    This creates the necessary replication slot as defined in pg_setup.

  5. In the source database, create a snapshot while keeping the session open:

    begin transaction isolation level REPEATABLE READ;

    select pg_export_snapshot();

  6. Use the following snapshot to run pg_dump on the source:

    pg_dump --snapshot=00000003-000001BC-1 -d <database_name> -Fc -b -v -f dump04172024.sql -n <schemas>

    For example:

    pg_dump --snapshot=00000003-000001BC-1 -d testdb -Fc -b -v -f dump04172024.sql -n splex --username=splex

  7. Resume user access to the source database while pg_dump is in progress.

  8. Use the dump file to execute pg_restore on the target database after pg_dump is completed:

    pg_restore -v -h pslaurorapgdb01.cihp157rpcvu.us-west-1.rds.amazonaws.com -U splex -d auroratest -j2 dump04172024.sql -n splex

  9. Once pg_restore is executed, log in to the target database and check the tables.

  10. After successful restoration, start the post queue on the target server using start post in sp_ctrl:

    sp_ctrl> start post

  11. Validate replication to ensure everything is working correctly.

 

Apply an Oracle application patch or upgrade

This chapter contains procedures to follow when you need to apply an application patch or upgrade and there is an active replication configuration. These procedures apply to Oracle databases.

Contents

Before you patch or upgrade an application

Review the following topics before you patch or upgrade an application on a system where SharePlex replication is active.

Which procedure to use?

There are different procedures for applying an application patch or upgrade to an Oracle database while replication is in process. Which one to choose depends on what changes the patch or upgrade makes.

Changes made by the patch/upgrade Steps to take

If the patch/upgrade applies DDL that is not supported by SharePlex. For details on the DDL that SharePlex supports, see the SharePlexSharePlex Release Notes.

Manually apply the patch/upgrade to the source and target by following either of these procedures:

Apply Patch/Upgrade to Source then Copy it to Target

Apply Patch/Upgrade to Source and Target

If the patch/upgrade does any of the following:

  • Performs DML changes.
  • Performs supported DDL on the source system. For details on the DDL that SharePlex supports, see the SharePlexSharePlex Release Notes.
  • Changes users and security on source system (other than SharePlex)

Manually apply the patch/upgrade to the source, then allow SharePlex to replicate the changes to the target. Follow this procedure:

Apply Patch to Source and Replicate it to the Target

Note: Because this procedure assumes that SharePlex can replicate all of the changes that the patch or upgrade applies, the patch/upgrade is not applied to the target.

The effect of patches and upgrades on partitioned replication

A patch or upgrade can make changes that affect the column partitions of vertically partitioned replication in your configuration file. Take the following into account when you perform this procedure.

If the patch or upgrade does this to a table: Do this:
Adds columns that do not satisfy the column partition of the table (Optional) Drop the columns from the target table after the patch or upgrade is applied.
Adds columns that need to be in the column partition of the table Add those columns to the source and target column partition lists in the configuration file.
Drops columns that are part of the column partition of the table

Remove those columns from the source and target column partition lists in the configuration file.

Changes the name of a column that is in the column partition of a table Change the column name in the source and target column partition lists in the configuration file.

For more information, see Configure Vertically Partitioned Replication.

Naming conventions used

In these procedures, the "source" system is one of the following:

  • The source system of a single-direction replication configuration, including cascading replication.
  • All source systems of a consolidated replication configuration.
  • The trusted source system in a peer-to-peer replication configuration.

In these procedures, the "target" system is one of the following:

  • The target system of a single-direction replication configuration, including cascading and consolidated replication.
  • The secondary systems in a peer-to-peer replication configuration.

In this procedure, the SharePlex commands in the procedure apply to all sp_cop instances that apply to the replication strategy you are using (for example, all sp_cop processes on a target in consolidated replication).

Apply patch/upgrade to source then copy it to target

Supported databases

Oracle on all supported platforms

When to use this procedure

Use this procedure if the patch or upgrade makes DDL changes of a type not replicated by SharePlex. For a list of objects for which DDL is supported, see the SharePlex Release Notes.

Overview of the procedure

Use this procedure to run an Oracle hot backup to copy patches or upgrades from the source system to the target system, instead of applying the patch or upgrade directly on the target system. This is useful if the patch or upgrade makes extensive changes that are of the type(s) not supported by SharePlex replication, or if you are unsure of what it does.

With this procedure, you can keep the configuration file active on the source system. You use the reconcile command to identify and eliminate the following:

  • Duplicate DML and supported DDL from the patch or upgrade operations that were replicated but also applied by the backup.
  • Production transactions that were replicated but also applied by the backup.

Apply the patch/upgrade

To apply the patch or upgrade:

  1. Stop user access to the instances involved in replication on the source and target systems, but do not shut down SharePlex.
  2. On the source system, run sp_ctrl.
  3. On the source system, flush the data to the target system. This command stops Post and places a marker in the data stream that establishes a synchronization point between source and target data.

    sp_ctrl> flush datasource

    where: datasource is the datasource of the source instance, for example o.oraA.

  4. On the source system, apply the patch or upgrade.
  5. On the source system, restore user access to the source instance.
  6. [If the patch/upgrade adds objects that must be replicated] Edit the configuration file as follows (do not deactivate it). The patch or upgrade may have affected column partitions or column conditions in partitioned replication. For more information, see Change an Active Configuration File.

    • Copy the configuration file.

      sp_ctrl> copy config filename to newname

    • Edit the copy.

      sp_ctrl> edit config newname

      Save the file.

  7. Do one of the following:

    • If you added objects in the previous step, activate the new configuration file.

      sp_ctrl> activate config newname

    • If you did not make any changes to the original configuration file, activate that one.

      sp_ctrl> activate config filename

  8. On the source, run the Oracle hot backup.
  9. On the source, switch log files and make a note of the highest archive-log sequence number.

    On-premises database:

    svrmgr1> alter system switch logfile;

    Amazon RDS database:

    Use Amazon RDS procedure rdsadmin.rdsadmin_util.switch_logfile.

  10. On the target, recover the target database from the hot backup using the UNTIL CANCEL option in the RECOVER clause, and cancel the recovery after Oracle fully applies the log that you recorded in the previous step.
  11. On the target system, open the database with the RESETLOGS option.
  12. Run the Database Setup utility on the target instance, but do not create a new user. Choose the existing SharePlex user and password (copied in the backup). For more information, see Database Setup Utilities in the SharePlex Reference Guide.
  13. On the target system, issue the reconcile command using the sequence number of the log that you noted previously. If you are using named post queues, issue the command for each one. If you do not know the queue names, issue the qstatus command first.

    sp_ctrl> qstatus

    sp_ctrl> reconcile queue queuename for datasource-datadest seq sequence_number

    Example: reconcile queue SysA for o.oraA-o.oraA seq 1234

    Note: The reconcile process retains control of sp_ctrl until it is finished.

  14. On the target system, if the patch or upgrade installed triggers on the tables in replication, disable them or run the sp_add_trigger.sql utility script so that the triggers ignore the SharePlex user.
  15. On the target system, if the patch or upgrade added check constraints or scheduled jobs that perform DML, disable them.
  16. On the target system, perform any cleanup required by partitioned replication.

  17. On the target system, start Post.

    sp_ctrl> start post

    The two instances are now in synchronization, and SharePlex resumes replication.

Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating