Chat now with support
Chat with Support

SharePlex 12.0 - Installation and Setup Guide

About this Guide Conventions used in this guide Installing and Setting up SharePlex on Oracle Source Database
SharePlex Pre-installation Checklist for Oracle Download the SharePlex installer Install SharePlex on Linux and UNIX Set up an Oracle environment for replication Set up replication from Oracle to a different target type Installation and Setup for Cloud-Hosted Databases for Oracle Installation and setup for remote capture Installation and setup for HA cluster Generic SharePlex demonstration for Oracle Advanced SharePlex demonstrations for Oracle Database Setup Utilities Solve Installation Problems for Oracle
Installing and Setting up SharePlex on a PostgreSQL Database as Source and Service
SharePlex Pre-installation Checklist for PostgreSQL Download the SharePlex installer for PostgreSQL Install SharePlex on Linux for PostgreSQL as a Source Set up Replication from PostgreSQL to Supported Target Types Installation and Setup for Cloud-Hosted Databases for PostgreSQL Installation and Setup for Remote Capture for PostgreSQL Install SharePlex on PostgreSQL High Availability Cluster Configure SharePlex on PostgreSQL Azure Flexible Server with High Availability Using Logical Replication Generic SharePlex Demonstration for PostgreSQL Advanced SharePlex Demonstrations for PostgreSQL Database Setup for PostgreSQL Database Setup for PGDB as a Service Installation of pg_hint_plan extension Solve Installation Problems for PostgreSQL
Installing SharePlex on a Docker container Assign SharePlex users to security groups Solve Installation Problems Uninstall SharePlex Advanced installer options Install SharePlex as root SharePlex installed items

Post to PaaS Cloud from an Intermediary Server for PostgreSQL

These instructions help you set up SharePlex to replicate to a target cloud database from an intermediary server that runs the SharePlex Import and Post components.

See also:

Post to PaaS cloud from the source server for PostgreSQL

Overview of SharePlex setup on cloud databases.

Source PostgreSQL to cloud Open Target

  1. Complete the SharePlex preinstallation checklist.

  2. On the source server, install SharePlex for the source database. See: Install SharePlex on Linux/Unix for PostgreSQL Database.

  3. On the source server, run the appropriate database setup utility for the source database. See: Database Setup for PostgreSQL.

  4. On the intermediary server, install the appropriate ODBC client of the target cloud database.

  5. On the intermediary server, install SharePlex for the target cloud database. See: Install SharePlex on Linux/Unix for PostgreSQL Database.

  6. On the intermediary server, run the appropriate database setup utility for the target cloud database. See Database Setup Utilities.

  7. Specify the following in the routing map of the SharePlex configuration file:

    1. the name of the intermediary server as the target host.

    2. the name of the cloud database as the target database.

In the following example using a MySQL target, intermediary3 is the intermediary system and sptest3 is the target cloud database.

datasource:r.orcldbprim
#source tables target tables routing map
HR.EMP "sptest3"."emp" intermediary3@r.sptest3

For more information, see Configure SharePlex to replicate data in the SharePlex Administration Guide.

Installation and Setup for Remote Capture for PostgreSQL

Using PostgreSQL as a source with remote capture requires that the database instances be accessible from the servers on which SharePlex is installed.

To set up SharePlex for remote capture:

  1. Run PG Setup on the SharePlex system according to the instructions provided in the Database Setup Utilities for PostgreSQL section of the SharePlex Reference Guide.

    • When prompted with "Is DB hosted over Azure Single Server?", reply with "No" as Azure Single Server is not supported as a source.

  2. Complete all the setup tasks as mentioned in the Database Setup for PostgreSQL Database as a Service.

  3. After completing the setup, start sp_cop and sp_ctrl.

  4. For configuring and starting replication, refer to the SharePlex Administration Guide.

Install SharePlex on PostgreSQL High Availability Cluster

SharePlex supports CrunchyData High Availability cluster environment setup.

Follow the below configuration steps:

  1. Setup the CrunchyData High Availability cluster environment according to the CrunchyData setup documentation.

  2. Install or upgrade to SharePlex 11.1.

  3. Run the pg_setup utility and enter a slot name.

  4. Activate the configuration. The user input slot name will be created in the database after a successful activation.

  5. Add the slot name to the respective CrunchyData config [YML or YAML] file to monitor in failover or switchover scenario.

  6. Run the deactivate configuration or cleanup [pg_cleansp] utility to remove the dedicated slot name from the database. Users need to remove SharePlex dedicated slot name from the CrunchyData config file.

  7. Remove the SharePlex dedicated slot name from the CrunchyData config file.

Example of CrunchyData config command: patronictl -c /etc/patroni/crunchy-demo.yml edit-config

NOTE: User need to add SharePlex dedicated slot name to the respective CrunchyData config.

Limitation: SharePlex internally uses PostgreSQL logical replication with a PostgreSQL database over cloud services. In the event of a failover to the standby server, the logical replication slots are not copied over to the standby server on cloud database services; hence, SharePlex will not handle logical slot re-creation and maintenance with cloud database services. This applies to the AWS Multi-AZ cluster setup of the RDS PostgreSQL, and the Aurora PostgreSQL databases.

Configure SharePlex on PostgreSQL Azure Flexible Server with High Availability Using Logical Replication

SharePlex supports HA with logical replication on PostgreSQL Azure Flexible Server.

Follow the below configuration steps:

  1. Enable high availability setup on Azure Flexible Server using the steps provided in the link below:

    https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/how-to-manage-high-availability-portal#enable-high-availability-post-server-creation

    important: Users should be able to access the database using the primary server name (host name).

  2. Create pg_failover_slots extension setup using the steps provided in the link below:

    https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/concepts-extensions#pg_failover_slots-preview

    Note: The pg_failover_slots extension is supported for PostgreSQL version 11 to 15.

  3. Use the servername = hostname under the DSN in the odbc.ini file. User should use this DSN during pg_setup.

    Example:

    [DSN]

    Servername=pslflexihaserver01.postgres.database.azure.com

    Note: Do not use the IP address of the primary database server, as it may change after failover. As the hostname always points to the current primary database server, we should use only the host name.

  4. Stop the Capture process before the failover and restart it afterward, in the event of a planned failover.

    In the event of an unplanned failover, the Capture process will stop due to an error state after the failover and will need to be manually restarted.

Limitation: If consecutive failovers occur, before initiating the capture following the initial failover, the pg_failover_slots extension will remove logical slots from both the primary and standby servers. The reason is that after the first failover, the slot on the standby is marked as active and the slot on the primary is marked as inactive. An active state of 'true' on the standby indicates that the slot has not yet synchronized and is not safe for use. Hence, when the failover happens again, the slot on the new primary is lost. To avoid the removal of slots on the primary and standby servers, the user must start the capture after each failover. So, the extension should ideally mark the slot on the standby as inactive (as it being inactive means it is safe to replicate). For additional information, see https://github.com/EnterpriseDB/pg_failover_slots/issues/25.

Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating