Configure DBSync
About this task
Configuring a DBSync system includes extra tasks to create the extensions and to configure the database. The overall configuration process is provided here:
Steps
-
Download the appropriate Java database connectivity (JDBC) driver to PingDataSync’s
/PingDataSync/lib
directory, and restart the server for the driver to load into the runtime. -
Open the
java.properties
file with a text editor and add thejdbc.drivers
argument. Save the file. When using custom JDBC endpoints, SQL statements cannot be called unless JDBC drivers are set in thejava.properties
file. -
Run the
dsjavaproperties
command to apply the change. For example, enter the following forstart-sync-server
:start-sync-server.java-args=-d64 -server -Xmx256m -Xms256m - XX:+UseConcMarkSweepGC - Djdbc.drivers=foo.bah.Driver:wombat.sql.Driver:com.example.OurDriver ... etc.
-
Create one or more JDBC extensions based on the Server SDK. If configuring for bidirectional synchronization, two scripts are needed: one for the JDBC Sync Source and the other for the JDBC Sync Destination. Place the compiled extensions in the
/lib/extensions
directory. -
Configure the database change log table and triggers (presented later). The vendor’s native change tracking mechanism can be used, but a change log table should also be configured. Each table requires one database trigger to detect the changes and loads them into the change log table.
-
Configure the Sync Pipes, Sync Classes, external servers, distinguished name (DN) and attribute maps for one direction.
-
Run the
resync --dry-run
command to test the configuration settings. -
Run
realtime-sync set-startpoint
to initialize the starting point for synchronization. -
Run the
resync
command to populate data on the destination endpoint. -
Start the Sync Pipes using the
realtime-sync start
command. -
Monitor PingDataSync using the status commands and logs.
-
For bidirectional synchronization, configure another Sync Pipe, and repeat steps 4–8 to test the system.