SymmetricDS User Guide - Software · PDF fileSymmetricDS User Guide SymmetricDS v3.5 vii....

download SymmetricDS User Guide - Software · PDF fileSymmetricDS User Guide SymmetricDS v3.5 vii. SymmetricDS v3.5. Preface SymmetricDS is an open-source, web-enabled, database independent,

If you can't read please download the document

Transcript of SymmetricDS User Guide - Software · PDF fileSymmetricDS User Guide SymmetricDS v3.5 vii....

  • SymmetricDS User Guide

    v3.5

    Copyright 2007 - 2013 Eric Long, Chris Henson, Mark Hanes, Greg Wilmer

    Permission to use, copy, modify, and distribute the SymmetricDS User Guide Version 3.5 for any purpose andwithout fee is hereby granted in perpetuity, provided that the above copyright notice and this paragraph appear

    in all copies.

  • SymmetricDS v3.5

  • Table of ContentsPreface ................................................................................................................................................ ix1. Introduction ..................................................................................................................................... 1

    1.1. System Requirements ........................................................................................................... 11.2. Overview .............................................................................................................................. 2

    1.2.1. A Node is Born ......................................................................................................... 31.2.2. Capturing Changes .................................................................................................... 41.2.3. Change Delivery ....................................................................................................... 41.2.4. Channeling Data ........................................................................................................ 5

    1.3. Features ................................................................................................................................ 61.3.1. Two-Way Table Synchronization ............................................................................. 61.3.2. Data Channels ........................................................................................................... 61.3.3. Change Notification .................................................................................................. 61.3.4. HTTP(S) Transport ................................................................................................... 61.3.5. Data Filtering and Rerouting .................................................................................... 71.3.6. Transaction Awareness ............................................................................................. 71.3.7. Remote Management ................................................................................................ 71.3.8. File Synchronization ................................................................................................. 7

    1.4. Origins .................................................................................................................................. 81.5. Why Database Triggers? ...................................................................................................... 81.6. Support ................................................................................................................................. 91.7. What's New in SymmetricDS 3 ........................................................................................... 9

    2. Quick Start Tutorial ...................................................................................................................... 112.1. Installing SymmetricDS ..................................................................................................... 122.2. Creating and Populating Your Databases .......................................................................... 142.3. Starting SymmetricDS ....................................................................................................... 152.4. Registering a Node ............................................................................................................. 162.5. Sending an Initial Load ...................................................................................................... 172.6. Pulling Data ....................................................................................................................... 172.7. Pushing Data ...................................................................................................................... 182.8. Verifying Outgoing Batches .............................................................................................. 182.9. Verifying Incoming Batches .............................................................................................. 192.10. Multi-Homing .................................................................................................................. 20

    3. Planning ........................................................................................................................................ 233.1. Identifying Nodes ............................................................................................................... 233.2. Organizing Nodes .............................................................................................................. 233.3. Defining Node Groups ....................................................................................................... 263.4. Linking Nodes .................................................................................................................... 273.5. Choosing Data Channels .................................................................................................... 273.6. Defining Data Changes to be Captured and Routed .......................................................... 28

    3.6.1. Defining Triggers .................................................................................................... 283.6.2. Defining Routers ..................................................................................................... 293.6.3. Mapping Triggers to Routers .................................................................................. 30

    3.6.3.1. Planning Initial Loads .................................................................................. 303.6.3.2. Circular References and "Ping Back" .......................................................... 30

    SymmetricDS v3.5 iii

  • 3.6.4. Planning for Registering Nodes .............................................................................. 303.7. Planning Data Transformations ......................................................................................... 313.8. Planning Conflict Detection and Resolution ...................................................................... 31

    4. Configuration ................................................................................................................................ 334.1. Node Properties .................................................................................................................. 334.2. Node ................................................................................................................................... 354.3. Node Group ........................................................................................................................ 354.4. Node Group Link ............................................................................................................... 354.5. Channel .............................................................................................................................. 364.6. Triggers, Routers, and Trigger / Routers Mappings .......................................................... 37

    4.6.1. Trigger ..................................................................................................................... 374.6.1.1. Large Objects ............................................................................................... 384.6.1.2. External Select ............................................................................................. 38

    4.6.2. Router ...................................................................................................................... 394.6.2.1. Default Router .............................................................................................. 394.6.2.2. Column Match Router .................................................................................. 404.6.2.3. Lookup Table Router ................................................................................... 414.6.2.4. Subselect Router .......................................................................................... 424.6.2.5. Scripted Router ............................................................................................ 434.6.2.6. Audit Table Router ...................................................................................... 444.6.2.7. Utilizing External Select when Routing ...................................................... 45

    4.6.3. Trigger / Router Mappings ...................................................................................... 464.6.3.1. Enable / disable trigger router ...................................................................... 464.6.3.2. Initial Loads ................................................................................................. 464.6.3.3. Dead Triggers ............................................................................................... 484.6.3.4. Enabling "Ping Back" .................................................................................. 49

    4.7. Opening Registration ......................................................................................................... 494.8. Transforming Data ............................................................................................................. 50

    4.8.1. Transform Configuration Tables ............................................................................. 514.