Overview
Qlik Replicate is a data replication and synchronization tool that supports connecting to OceanBase Database through ODBC/MySQL to synchronize data across databases. This topic describes how to configure Qlik Replicate to synchronize data from OceanBase Database to SQL Server.
Version compatibility
- OceanBase Database version: ≥ V4.2.5
- Qlik Replicate version: V2025.11.0
Prerequisites
Before you use Qlik Replicate, make sure you have:
- Installed Qlik Replicate. For more information, see Install Qlik Replicate.
- Deployed OceanBase Database and created a MySQL-compatible tenant. For more information about how to create a MySQL compatible tenant, see Create a tenant.
- Enabled the Binlog service in the MySQL compatible tenant. For more information, see OceanBase Binlog service.
- Set up a SQL Server, with network connectivity to Qlik Replicate.
Procedure
Step 1: Obtain the database connection string
Contact the OceanBase Database deployment personnel to obtain the connection string. For example:
obclient -h$host -P$port -u$user_name -p$password -D$database_name
Parameter description:
$host: the IP address for connection. For ODP connections, use the ODP IP address; for direct connections, use the OBServer IP address.$port: the connection port. For ODP connections, the default is2883; for direct connections, the default is2881.$database_name: the database name.Notice
The user connecting to the tenant must have the
CREATE,INSERT,DROP, andSELECTprivileges on the database. For more information about user privileges, see Privilege classification in MySQL mode.$user_name: the connection account. For ODP connections, the format isUser@Tenant#ClusterorCluster:Tenant:User; for direct connections, the format isUser@Tenant.$password: the account password.
For more information about the connection string, see Connect to an OceanBase tenant by using OBClient.
Example:
obclient -hxxx.xxx.xxx.xxx -P2881 -utest_user001@mysql001 -p****** -Dtest
Step 2: Install Qlik Replicate
This topic demonstrates how to deploy Qlik Replicate using Docker. Perform the following steps:
# 1. Download the Linux version.
wget https://github.com/qlik-download/replicate/releases/download/v2025.11.0/QlikReplicate_2025_11_0_Linux_X64.tar.gz
# 2. Extract the package.
tar -xzf QlikReplicate_2025_11_0_Linux_X64.tar.gz
# 3. Extract the RPM package and create a Docker image.
mkdir -p ar_docker/
rpm2cpio areplicate-*.rpm | cpio -iv --make-directories --no-absolute-filenames ./opt/attunity/replicate/addons/samples/docker/*
mv ./opt/attunity/replicate/addons/samples/docker/* ./ar_docker/
rm -rf ./opt
cd ar_docker
cp ../areplicate-*.rpm .
sed -i '/^mysql8\|^sqlserver18.1/!s/^/#/' drivers
# 4. Install the MySQL ODBC 8.0.32 driver.
wget https://yum.oracle.com/repo/OracleLinux/OL8/MySQL80/connectors/community/x86_64/getPackage/mysql-connector-odbc-8.0.32-1.el8.x86_64.rpm
# 5. Install ODBC Driver 18.
curl https://packages.microsoft.com/config/rhel/8/prod.repo > /etc/yum.repos.d/mssql-release.repo
ACCEPT_EULA=Y yum install -y msodbcsql18
# 6. Create a Dockerfile.
./create-dockerfile.sh
sed -i 's/RUN yum -y install \/tmp\/areplicate-\*.rpm/RUN systemd=no yum -y install \/tmp\/areplicate-*.rpm/' Dockerfile
# 7. Build the Docker image.
docker build --no-cache -t qlik-replicate:2025.11.0 .
# 8. Start the container.
docker run -d --name replicate-container \
--hostname replicate-host \
-e ReplicateDataFolder="/replicate/data" \
-e ReplicateAdminPassword="********" \
-e ReplicateRestPort="3552" \
-p 3552:3552 \
qlik-replicate:2025.11.0
# 9. Verify whether Qlik Replicate is started.
sudo netstat -ntlp | grep 3552
Access the Qlik Replicate service address in a browser: http://localhost:3552/attunityreplicate/login. Log in to Qlik Replicate. The default account name is admin, and the password is the value of the ReplicateAdminPassword parameter that you set during deployment.
Step 3: Create a synchronization task by using Qlik Replicate
Configure the source endpoint (Source Endpoint)
In the Qlik Replicate management console, create a new source endpoint and select MySQL as the type.
Enter the Server, Port, Username, and Password values, and click Test Connection to verify the connectivity.
Alternatively, connect to OceanBase Database by using an ODBC DSN:
a. Log in to the Qlik Replicate container and configure
/etc/odbc.ini:tee /etc/odbc.ini << 'EOF' [MySQL-Test] Description=MySQL Test Connection Driver=MySQL ODBC 8.0 Unicode Driver Server=$host Port=2883 User=$user_name Password=$password Option=3 Charset=utf8mb4 EOFb. List all DSNs:
odbcinst -q -sc. Test the DSN connection:
isql -v MySQL-TestAfter the connection is successful, select the DSN
MySQL-Testin the Qlik Replicate console and click Test Connection.
Configure the target endpoint (Target Endpoint)
- Create a target endpoint, such as SQL Server.
- Enter the Server, Username, Password, and Database name values, and click Test Connection to verify the connectivity.
Configure the synchronization task
In the ETL task, select the tables to be synchronized and the synchronization mode (full or incremental).
Start the task
Start the synchronization task and monitor its running status in the management console.
Verify the result
After the synchronization task is started, log in to the target database (SQL Server) to verify the following:
- Check whether the table structure and data in the target database are consistent with those in the source database.
- Check whether the data content is complete and accurate.
- Check whether the synchronization is real-time.
- Check whether the task is running normally without errors or performance bottlenecks.
FAQs
Q1: The synchronization task returns the error message "Binary logging basename not found."
Cause: The variables are missing when the SQL query is executed.
Solution: Contact OceanBase Technical Support to check the configuration and confirm that the following variables are correctly set:
SHOW GLOBAL VARIABLES LIKE 'log_bin_basename';
Q2: The synchronization task returns the error message "Binary logging must use the FULL row image."
Cause: The row image format of the binlog is not set to FULL.
Solution: Execute the following command in the OceanBase tenant:
SET GLOBAL binlog_format = 'ROW';
SET GLOBAL binlog_row_image = 'FULL';
Q3: The login to the Web page fails.
Cause: The administrator password does not meet the security policy requirements.
Solution: Change the password of the admin user. For more information about the password requirements, see Qlik Replicate official documentation.
More information
- Qlik Replicate official documentation
- For more technical support, contact OceanBase Technical Support.
