EDB DMS agent parameter reference Innovation Release
- Hybrid Manager dual release strategy
- Documentation for the current Long-term support release
DMS agent general configuration
These parameters define the information the EDB DMS agent requires to:
- Access the Hybrid Manager (HM) instance and project that you're using for the migration
- Connect to the source database and collect data or connect to the destination database and migrate data
Note
A DMS Agent instance can only run in either reader or writer mode.
DBCONFIG_ID
The name you assign to identify a source/destination. This name will later appear either as a source in the Migrate section in the Sources tab of the HM console or as a destination in the Destinations tab.
For the ID:
- The maximum character length is 255 characters.
- You can use lowercase and uppercase characters, numbers, underscores(_) and hyphens(-). Other special characters aren't supported.
- The ID must be unique in a project. Don't use the same ID for two or more sources/destinations in the same project.
RUN_MODE
Determines how the EDB DMS agent runs. Set it to reader if you're using the DMS agent to connect HM with a migration source. Set it to writer if you're connecting HM with an external, self-managed migration destination.
Run the DMS agent in writer mode only if the destination for your migration is a self-managed Postgres database.
RW_SERVICE_HOST
Specifies the URL of the DMS that the EDB DMS agent uses to perform migrations. This value is deployment-scoped — the same URL applies across all projects within a given HM deployment. Obtain this value from the HM console Sources or Destinations migration pages.
To obtain your RW_SERVICE_HOST:
In the HM console, select the project you want to use for migrations.
In the left navigation select Migrate and then select Sources or Destinations.
Both Sources and Destinations pages display the
RW_SERVICE_HOSTin a banner at the top of the page.Use the copy icon to get the value and use it for the configuration of your EDB DMS agent.
CREDENTIAL_DIRECTORY_PATH
The directory path of the credentials folder you downloaded from the HM console.
DMS agent database configuration
These parameters (DBCONFIG_DATABASES section) define a list of source/destination database information the EDB DMS agent requires to connect to the correct database for the migration.
You can configure the EDB DMS agent to migrate multiple databases. The DBCONFIG_DATABASES_0__TYPE section delimits the information for the first database. You can use DBCONFIG_DATABASES_1__TYPE to provide data for a second database. Add more sections to the EDB DMS agent (DBCONFIG_DATABASES_2__TYPE, DBCONFIG_DATABASES_3__TYPE) by increasing the index manually.
DBCONFIG_DATABASES_0__TYPE
The source/destination database type.
The EDB DMS agent supports ORACLE and POSTGRES as source database types (in reader mode), but only POSTGRES as a destination type (in writer mode).
DBCONFIG_DATABASES_0__HOSTNAME
The hostname of the source/destination database.
Note
For RDS databases, ensure the DBCONFIG_DATABASES_0__HOSTNAME value points to the RDS endpoint you can find under Connectivity & security in the AWS console. A redacted example is foo_database.cb7asw1xxxxx.eu-west-0.rds.amazonaws.com.
DBCONFIG_DATABASES_0__PORT
The port of the source/destination database.
DBCONFIG_DATABASES_0__CATALOG
The database name in the source/destination database server.
For Oracle sources:
- CDB/PDB: use
CDB_NAME/PDB_NAME(for example,ORCLCDB/ORCLPDB1). The agent splits on/to identify the CDB and PDB separately. Using only the PDB name causes it to be treated as the CDB, leaving the PDB unset. - Non-CDB: use the SID or service name (for example,
ORCL)
DBCONFIG_DATABASES_0__USERNAME
The database username of the source/destination database. Use your dedicated migration user, it can be the same user you created for the EDB Postgres AI agent.
Note
For Oracle sources, use your dedicated migration user — not SYS or other privileged system accounts. See Preparing your Oracle source for instructions on creating the required migration user.
DBCONFIG_DATABASES_0__PASSWORD
The password for the database username of the source/destination database. You can set an environment variable for the password without specifying it in the script, but the variable must follow this format: export DBCONFIG_DATABASES_0__PASSWORD=password
DBCONFIG_DATABASES_0__RESOURCEID
User-defined identifier that associates this database with its registered counterpart in HM.
If you previously registered this database with the EDB Postgres AI agent, this value must match the resource_id set for this database in beacon_agent.yaml. This is how HM correlates the DMS agent source with the registered database — a mismatch will cause them to appear as separate, unrelated entries.
DBCONFIG_DATABASES_0__INCLUDELIST
Comma-separated list of schema.table tokens that controls which tables are available for migration. Use * as a wildcard for schema or table name (for example, SCHEMA1.* or *.TABLE1).
If absent or empty, all tables are included. If EXCLUDELIST is also set, exclusions take priority.
DBCONFIG_DATABASES_0__EXCLUDELIST
Comma-separated list of schema.table tokens for tables to always exclude from migration. Use * as a wildcard. Takes priority over INCLUDELIST — a table matching any exclude pattern is always excluded regardless of include rules.
DBCONFIG_DATABASES_0__SSLMODE
Controls the SSL/TLS behavior for the database connection. Accepted values:
STRICT— verify-full; requires a valid, trusted certificateDEFAULT— require encryption but don't verify the certificateWEAK— prefer encryption but allow plaintext fallback
DBCONFIG_DATABASES_0__SOCKETTIMEOUT
Socket timeout in seconds for the database connection. Used for dead connection detection. Default: 600 for writer mode, 60 for reader mode.
DBCONFIG_DATABASES_0__TCPKEEPALIVE
Enables TCP keepalive probes on the database connection. Default: true.
DBCONFIG_DATABASES_0__TCPKEEPALIVESIDLE
Seconds of inactivity before the first TCP keepalive probe is sent. Used during long-running writer operations such as PK application and post-snapshot deduplication. Default: 60.
DBCONFIG_DATABASES_0__TCPKEEPALIVESINTERVAL
Seconds between TCP keepalive retry probes. Default: 10.
DBCONFIG_DATABASES_0__TCPKEEPALIVESCOUNT
Maximum number of failed TCP keepalive probes before the connection is considered dead. Default: 6.
DBCONFIG_DATABASES_0__JDBCOPTIONS
Arbitrary JDBC driver properties to pass to the database connection, in key=value;key=value format. These are applied after defaults but before explicit settings like SSLMODE and SOCKETTIMEOUT.
Oracle examples:
- Disable network encryption negotiation:
oracle.net.encryption_client=REJECTED - Set session program name:
v$session.program=DMSAgent
Optional parameters
FIPS_MODE
If you need to comply with FIPS standards, enable FIPS mode for the DMS Agent by setting the environment variable to true: export FIPS_MODE=true.
TRANSFORMATION_ENABLE_NULLCHAR_REPLACEMENT
Oracle-specific. Enables replacement of null characters (0x00) in text-based column types: VARCHAR2, LONG, CLOB, and NCLOB. Default: false.
Use together with TRANSFORMATION_NULLCHAR_REPLACEMENT to specify the replacement string.
TRANSFORMATION_NULLCHAR_REPLACEMENT
Oracle-specific. The string used to replace null characters (0x00) when TRANSFORMATION_ENABLE_NULLCHAR_REPLACEMENT is enabled. Defaults to an empty string.
TRANSFORMATION_ENABLE_SPECIAL_COLUMN_NAME_ENCODING
Oracle-specific. Enables encoding of special characters ($ and -) in column names. Default: false.
DBZ_*
Debezium property passthrough. You can override any Debezium connector property by prefixing it with DBZ_. For example, to set max.batch.size, use export DBZ_MAX_BATCH_SIZE=204800.
For a full list of supported properties, see the Debezium documentation:
QUARKUS_LOG_LEVEL
Sets the default log level for the entire Quarkus application, including all underlying frameworks and third-party libraries.
Avoid setting this to DEBUG or TRACE unless you need to diagnose issues within the entire application ecosystem. Using this method produces logs that are excessively verbose and difficult to analyze. Use QUARKUS_LOG_CATEGORY__COM_ENTERPRISEDB__LEVEL instead for focused debugging.
QUARKUS_LOG_CATEGORYCOM_ENTERPRISEDBLEVEL
Sets the log level specifically for classes within the com.enterprisedb package.
This is the recommended parameter for debugging. Set this parameter to DEBUG or TRACE to obtain detailed logging for the DMS agent's core logic (the components relevant to schema extraction, migration assessment, etc.). This isolates the useful output and excludes messages from third-party libraries.
- On this page
- DMS agent general configuration
- DMS agent database configuration
- DBCONFIG_DATABASES_0__TYPE
- DBCONFIG_DATABASES_0__HOSTNAME
- DBCONFIG_DATABASES_0__PORT
- DBCONFIG_DATABASES_0__CATALOG
- DBCONFIG_DATABASES_0__USERNAME
- DBCONFIG_DATABASES_0__PASSWORD
- DBCONFIG_DATABASES_0__RESOURCEID
- DBCONFIG_DATABASES_0__INCLUDELIST
- DBCONFIG_DATABASES_0__EXCLUDELIST
- DBCONFIG_DATABASES_0__SSLMODE
- DBCONFIG_DATABASES_0__SOCKETTIMEOUT
- DBCONFIG_DATABASES_0__TCPKEEPALIVE
- DBCONFIG_DATABASES_0__TCPKEEPALIVESIDLE
- DBCONFIG_DATABASES_0__TCPKEEPALIVESINTERVAL
- DBCONFIG_DATABASES_0__TCPKEEPALIVESCOUNT
- DBCONFIG_DATABASES_0__JDBCOPTIONS
- Optional parameters