add (Capture) |
Scroll |
Next, the configuration file must be updated by adding an entry for each table to be captured using the add command. Only one table and one associated datastore (target subscription) can be added at a time. Precisely highly recommends keeping a Recover/Recreate configuration file Job or shell script available should circumstances require recovery.
Add each source table to the list of tables to be captured in the Capture Configuration (.cab) file. Relational databases use different semantics but generally speaking each table is identified by three objects. First by its "location" which may be called the SSID, Member, Database name, Catalog name, Cluster name, etc specified by the sqdconf create command. The second is commonly referred to as the schema. The third is the individual table name. Each table added must have an accompanying "datastore" representing a single target subscription. Additional target subscriptions can be "added" but that is performed with the sqdconf modify command It is important to develop a standard for how Datastores will be identified, particularly if a large number will be defined. The source is marked inactive by default but remember, even sources marked active will not be captured until changes to the configuration file are applied.
Syntax
sqdconf add <cab_file_name>
--schema=<name> --table=<name> | --key=<name>
--datastore=<url>
[--active | --inactive]
[--pending]
Keyword and Parameter Descriptions
<cab_file_name> - Must be specified and must match the name specified in the previous create command.
--schema=<name> Schema name, owner, or qualifier of a table. This parameter must be accompanied by the --table parameter.
--table=<name> The un-qualified table name. Must be used with --schema to fully identify a relational source as schema.name.
--key=<name> A fully qualified table name in the form of schema.name that identifies the source. This may be used in place of two parameters, --schema and --table. Both cannot be specified.
--datastore=<url> | -d <url> - While most references to the term datastore describe physical entities, a datastore URL represents a target subscription and takes the form: cdc://[localhost]/[<agent_alias>]/<subscriber_name> where:
•<host_name> - Optional, typically omitted with only a / placeholder. If specified must match the [<localhost_name> | <localhost_IP>] of the server side of the socket connection.
•<agent_alias> - Optional, typically omitted with only a / placeholder. If specified must match the <capture_agent_alias> or <publisher_agent_alias> assigned to the Capture/Publisher agent in the Controller Daemon sqdagents.cfg configuration file.
•<subscriber_name> The name presented by a requesting target agent. Also referred to as the Engine name. Connection requests by Engines or the sqdutil utility must specify a valid <subscriber_name> in their cdc://<host_name>/<agent_alias>/<subscriber_name> connection url.
[--active | --inactive] - Mark a table as active or in-active for capture. The table will remain in the current state until the capture is stopped, applied and re-started. The default is --inactive.
[--pending] This parameter allows a table to be added to the configuration before it exists in the database catalog.