Static Informix CDC with Gluesync: Setup

Source data from Informix

As for now there are some limitations on the following data type: set, blob, lvarchar(4096). Please contact us for more details.

Prerequisites

To have Gluesync working on your Informix instance you will need to have:

  • Valid user credentials with permission to read from source tables;

  • The database must be configured to use the change data capture API (see below for a how-to guide on how to enable it).

Setup via Web UI

  • Hostname / IP Address: Hostname or IP Address of your server;

  • Port: Optional, defaults to 9088;

  • Database name: Name of your database;

  • Username: Username with read/write access to the tables;

  • Password: Password belonging to the given username;

  • Max connections count: Maximum number of connections the pool can instantiate.

Specific configuration

This agent has no specific configuration properties.

Setup via Rest APIs

Here following an example of calling the CoreHub’s Rest API via curl to setup the connection for this Agent.

Connect the agent

curl --location --request PUT 'http://core-hub-ip-address:1717/pipelines/{pipelineId}/agents/{agentId}/config/credentials' \
--header 'Content-Type: application/json' \
--header 'Authorization: ••••••' \
--data '{
        "hostCredentials": {
        "connectionName": "myAgentNickName",
        "host": "host-address",
        "port": 9088,
        "databaseName": "db_name",
        "username": "",
        "password": "",
        "maxConnectionsCount": 100,
        "enableTls": true,
        "certificatePath": "/myPath/cert.pem"
      }
}'

Setting up for CDC

Follow the steps below to set up the change data capture API on your Informix instance.

Informix CDC

  1. Turn on logging for all databases from which you intend to capture data changes by running the cdc_set_fullrowlogging() function (from the syscdcv1 db) with the logging argument set to 1.

    EXECUTE FUNCTION cdc_set_fullrowlogging('demo:informix.articles', 1);
  2. Run the following script as user informix from the $INFORMIXDIR/etc directory: syscdcv1.sql

    dbaccess demo $INFORMIXDIR/etc/syscdcv1.sql
  3. Verify that the syscdcv1 database exists by creating a connection to it, as user informix. For example, you can use DB-Access to connect to the syscdcv1 database. The connection string for a Java application will have the following format

    "jdbc:informix-sqli://10.17.3.127:9088/syscdcv1:user=informix;password=in4mix;"
  4. Set the DB_LOCALE environment variable to be the same as the locale of the database from which you want to capture data.

Once done you can create a new user that will be then given to Gluesync to connect to the syscdcv1 database throuch the informix change stream client to get the stream of events produced by the changes applied to the database.