rdm-replicate

Database Replicate Utility

Synopsis

rdm-replicate [OPTION]… source-db-uri target-db-uri

Description

rdm-replicate is a command-line utility to replicate data from a source RaimaDB database to a target RaimaDB database.

Options

Short options can be combined into one string starting with a single '-'. Mandatory arguments to long options are mandatory for short options too. Long option arguments can also be specified in a separate argument.

-h, --help Display this usage information
--version Display the version information
-q, --quiet Quiet mode. No information will be displayed
--docroot=path Document root to use instead of the current working directory. The environment variable RDM_DOCROOT can also be used. (See Document Root (docroot))
--listen=interface Enable the listener on a given interface ('--listen=none', '--listen=tcp', '--listen=shm', or '--listen=all'). The default is 'all'.
--service=service Enable one or more services. Supported values are: 'all', 'none', 'rdm', 'sql' and 'rest'. Multiple values can be specified with a comma (e.g. --service=rdm,sql). The default is 'all'.
-n, --name=name Specifies the server port (TCP/IP) or name (non-TCP-IP) for connections. The default port is "21553" and the default name is "21553". If a number is specified, it will be used for the TCP/IP port and the server name. If a string or invalid port number is specified, it will be used as the server name, and the TCP/IP transport will not be initialized.
--start Start the server as background process (UNIX only)
--stop Stop the server
--query Query the execution status of the server
--logfile=name Log output to the specified log file
--log-category=category Set the log category (this can be specified more than once for multiple categories) - the default is all)
--log-level=level Set the log level ('--log-level=all', '--log-level=error', '--log-level=warning', '--log-level=info', '--log-level=mesg', or a number (5-99)) - the default is '99')
--err-level=level Set the error level (all, error, warning, info, mesg,or a number (5-99)) - the default is info)
--force-ssl Force listener to accept only SSL connections
--certificate=buffer Use the certificate stored in this buffer
--certificate-file=file_name Use the certificate stored in this file_name
--private-key=buffer Use the SSL private key stored in this buffer
--private-key-file=file_name Use the SSL private key stored in this file_name
--key=ignore We accept this option but ignore the argument for compatibility with other rdm command line tools
--copy Copy the data from the source to the target
-f, --force Force overwriting a destination that exists
-u, --allow-unsafe Allow skipping pack files if the target is lagging behind
--poll-frequency=milliseconds Number of milliseconds to wait between each time we poll the source database for changes
--pack-file-size=size The pack file size
--pid-file=file-name A file name to write the process-ID to. This file will be created before the command returns and it will be deleted upon a clean termination.
--source-io=how How we are doing IO for the source database in the case we are connecting to a remote TFS on the same machine. Possible values are '--source-io=local' and '--source-io=remote'. The default value is '--source-io=local'.
source-db-uri The Source RaimaDB Database URI
target-db-uri The Target RaimaDB Database URI

Comments

The replication is done by copying the content of pack files from a source database to a target database.

Use the --copy option to copy the database from the source to the target. This operation may fail if the target database already exists. However, the --force option can be used to override this. The copy will contain the data that was present in the source database at some time after this command was started but before it returned.

This utility may be cleanly terminated on some platforms by issuing SIGTERM. Issuing SIGINT will terminate the utility immediately on some platforms. There are some limitations other clients of these databases have to obey. The source database can not be opened in exclusive mode by any client, and the destination database can only be opened in read only mode.

Please note that the options '--docroot', '--name', '--service', and '--listen' only applies to the TFS instantiated as part of running rdm-replicate similarly to how they would apply to rdm-tfs. Any RaimaDB database URI that connects to another server is not affected by these options.