What are parameters?

Last updated: May 1, 2026

Parameters allow you to specify additional behavior when running Liquibase Commands. They may take Booleans, strings, integers, or other types as values. You can:

- Enter properties as command-line arguments - Create connection profiles or specify other parameters in the Liquibase properties file - Specify global or command arguments in Liquibase flow file actions - Use the JAVA_OPTS variable to pass custom settings to the Java Virtual Machine (JVM) that runs Liquibase - Use environment variables to securely pass sensitive data

Configuration hierarchy

Liquibase supports the setting of properties from the following locations, from highest to lowest priority:

  1. Liquibase flow file stage parameters

  2. Liquibase flow file global parameters

  3. Command-line arguments

  4. ServletConfig initialization parameters

  5. ServletContext initialization parameters

  6. Java system properties

  7. OS environment variables

  8. Configuration data, such as piped standard input, defaults files, and connection profiles and other properties stored in the Liquibase properties file.

For example, command-line arguments override ServletConfig and ServletContext initialization parameters, Java system properties, OS environment variables, and configuration data, while OS environment variables override configuration data only.

The following tables describe the Liquibase parameters that are available as global or command-specific options. For more information, run liquibase --help from the command prompt. To learn how to use parameters in more detail, see Working with Command Parameters.

Global

You can use global parameters with any Liquibase command.

Note: Syntax for each parameter is specified in kebab-case (CLI and flow file), camelCase (properties file and JAVA_OPTS), and MACRO_CASE (environment variable).

For best results, specify all commands and parameters in the --kebab-case format in the CLI. If your preference is camelCase, it also works in the CLI.

Global parameter options

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--allow-duplicated-changeset-identifiers globalArgs: {allow-duplicated-changeset-identifiers: "val"} liquibase.allowDuplicatedChangesetIdentifiers LIQUIBASE_ALLOW_DUPLICATED_CHANGESET_IDENTIFIERS

Boolean

Specifies whether Liquibase lets you deploy multiple changesets with the same filepath, author, and ID. Liquibase 4.25.1+.

Default: false. See allow-duplicated-changeset-identifiers.

--always-drop-instead-of-replace globalArgs: {always-drop-instead-of-replace: "val"} liquibase.alwaysDropInsteadOfReplace LIQUIBASE_ALWAYS_DROP_INSTEAD_OF_REPLACE

Boolean

If true, drops and recreates a view instead of replacing it. Only affects PostgreSQL databases.

Default: false. See always-drop-instead-of-replace.

--always-override-stored-logic-schema globalArgs: {always-override-stored-logic-schema: "val"} liquibase.alwaysOverrideStoredLogicSchema LIQUIBASE_ALWAYS_OVERRIDE_STORED_LOGIC_SCHEMA

String

When generating SQL for createProcedure, the parameter defines whether the procedure schema should be forced to the default schema if no schemaName attribute is set.

Default: false. See always-override-stored-logic-schema.

--analytics-enabled globalArgs: {analytics-enabled: "val"} liquibase.analyticsEnabled LIQUIBASE_ANALYTICS_ENABLED

Boolean

Liquibase 4.30.0+. Enables or disables Liquibase Anonymous Analytics.

Default: true for Liquibase Open Source users and false for Liquibase Secure users. See analytics-enabled.

--analytics-log-level globalArgs: {analytics-log-level: "val"} liquibase.analyticsLogLevel LIQUIBASE_ANALYTICS_LOG_LEVEL

String

Liquibase 4.30.0+. Specifies the amount of detail Liquibase provides in user-facing logs for Anonymous Analytics.

Default: INFO. See analytics-log-level.

--auto-reorg globalArgs: {auto-reorg: "val"} liquibase.autoReorg LIQUIBASE_AUTO_REORG

Boolean

Defines whether Liquibase automatically reorganizes table objects stored on disk when you modify a DB2 database.

Default: true. See auto-reorg.

--changelog-lock-poll-rate globalArgs: {changelog-lock-poll-rate: "val"} liquibase.changelogLockPollRate LIQUIBASE_CHANGELOG_LOCK_POLL_RATE

Integer

Specifies the number of seconds Liquibase waits to check if a changelog lock has been released.

Default: 10. See changelog-lock-poll-rate.

--changelog-lock-wait-time-in-minutes globalArgs: {changelog-lock-wait-time-in-minutes: "val"} liquibase.changelogLockWaitTimeInMinutes LIQUIBASE_CHANGELOG_LOCK_WAIT_TIME_IN_MINUTES

Integer

Specifies the amount of time Liquibase waits for a locked database to become available.

Default: 5. See changelog-lock-wait-time-in-minutes.

--changelog-parse-mode globalArgs: {changelog-parse-mode: "val"} liquibase.changelogParseMode LIQUIBASE_CHANGELOG_PARSE_MODE

String

Configures how to handle unknown fields in changelog files. Possible values:

STRICT (causes parsing to fail) and LAX (continues with the parsing).

Default: STRICT.

--classpath globalArgs: {classpath: "val"} liquibase.classpath LIQUIBASE_CLASSPATH

String

Specifies additional classpath entries to use. Use the format /path/to/your/additional/jars. Separate multiple JARs with : on UNIX and ; on Windows. For example: ./DatabricksJDBC42.jar:./liquibase-databricks-<version>.jar

Note: Liquibase uses the classpath to find all JARs in any location you specify except for extension JARs, such as the Liquibase extension for DynamoDB. Extension JARs included via classpath must go in one of the following locations: ./liquibase_libs, lib, internal/lib, or internal/extensions.

--convert-data-types globalArgs: {convert-data-types: "val"} liquibase.convertDataTypes LIQUIBASE_CONVERT_DATA_TYPES

Boolean

Allows Liquibase to convert data types such as int, bigint, timestamp, and clob to the standard data types.

Default: true. See convert-data-types.

--database-changelog-lock-table-name globalArgs: {database-changelog-lock-table-name: "val"} liquibase.databaseChangelogLockTableName LIQUIBASE_DATABASE_CHANGELOG_LOCK_TABLE_NAME

String

Specifies the name of a table to use for tracking concurrent Liquibase usage.

Default: DATABASECHANGELOGLOCK. See database-changelog-lock-table-name.

--database-changelog-table-name globalArgs: {database-changelog-table-name: "val"} liquibase.databaseChangelogTableName LIQUIBASE_DATABASE_CHANGELOG_TABLE_NAME

String

Specifies the name of a table to use for tracking change history.

Default: DATABASECHANGELOG. See database-changelog-table-name.

--database-class globalArgs: {database-class: "val"} liquibase.databaseClass LIQUIBASE_DATABASE_CLASS

String

Specifies the class to use for a Database implementation. See database-class.

--ddl-lock-timeout globalArgs: {ddl-lock-timeout: "val"} liquibase.ddlLockTimeout LIQUIBASE_DDL_LOCK_TIMEOUT

Integer

Liquibase 4.6.2+.

Indicates the number of seconds a DDL command should wait for the locks to become available before throwing the "resource busy" error message. This parameter applies only to Oracle databases. See

ddl-lock-timeout.

--defaults-file globalArgs: {defaults-file: "val"} liquibase.defaultsFile LIQUIBASE_DEFAULTS_FILE

String

Specifies the file with default Liquibase properties.

Default: liquibase.properties. See defaults-file.

--diff-column-order globalArgs: {diff-column-order: "val"} liquibase.diffColumnOrder LIQUIBASE_DIFF_COLUMN_ORDER

Boolean

Defines whether Liquibase compares the column order in a diff operation.

Default: true. See diff-column-order.

--driver globalArgs: {driver: "val"} liquibase.driver LIQUIBASE_DRIVER

String

Specifies the database driver class. See driver.

--driver-properties-file globalArgs: {driver-properties-file: "val"} liquibase.driverPropertiesFile LIQUIBASE_DRIVER_PROPERTIES_FILE

String

Specifies a file with driver-specific JDBC connection properties, to keep them separate from other properties. See driver-properties-file.

--duplicate-file-mode globalArgs: {duplicate-file-mode: "val"} liquibase.duplicateFileMode LIQUIBASE_DUPLICATE_FILE_MODE

String

How to handle multiple files being found in the search path that have duplicate paths. Valid values are SILENT (do not log and choose one at random), DEBUG, INFO, WARN (log at the given level and choose one at random), and ERROR (fail current operation)

Default: ERROR. See duplicate-file-mode.

--error-on-circular-include-all globalArgs: {error-on-circular-include-all: "val"} liquibase.errorOnCircularIncludeAll LIQUIBASE_ERROR_ON_CIRCULAR_INCLUDE_ALL

Boolean

Throw an error if Liquibase detects that an includeAll will cause a circular reference (and thus a changelog parse error).

Default: true. See error-on-circular-include-all.

--file-encoding globalArgs: {file-encoding: "val"} liquibase.fileEncoding LIQUIBASE_FILE_ENCODING

String

Encoding to use when reading files. Valid values include:

UTF-8, UTF-16, UTF-16BE, UTF-16LE, US-ASCII, or OS to use the system's configured encoding.

Default: UTF-8. See file-encoding.

--generate-changeset-created-values globalArgs: {generate-changeset-created-values: "val"} liquibase.generateChangesetCreatedValues LIQUIBASE_GENERATE_CHANGESET_CREATED_VALUES

Boolean

Determines whether Liquibase adds timestamps to changesets in the changelog it generates when you run the diff-changelog or generate-changelog commands.

Default: false. See generate-changeset-created-values.

--generated-changeset-ids-contains-description globalArgs: {generated-changeset-ids-contains-description: "val"} liquibase.generatedChangesetIdsContainsDescription LIQUIBASE_GENERATED_CHANGESET_IDS_CONTAINS_DESCRIPTION

String

Determines whether Liquibase includes changeset descriptions in changelogs generated with the generate-changelog command in addition to changeset IDs.

Default: false. See generated-changeset-ids-contains-description.

--headless globalArgs: {headless: "val"} liquibase.headless LIQUIBASE_HEADLESS

String

Forces Liquibase to run without access to the console for input and output.

Default: false. See headless.

--include-catalog-in-specification globalArgs: {include-catalog-in-specification: "val"} liquibase.includeCatalogInSpecification LIQUIBASE_INCLUDE_CATALOG_IN_SPECIFICATION

Boolean

Defines whether Liquibase includes the catalog name when determining equality between the compared databases.

Default: false. See include-catalog-in-specification.

--include-relations-for-computed-columns globalArgs: {include-relations-for-computed-columns: "val"} liquibase.includeRelationsForComputedColumns LIQUIBASE_INCLUDE_RELATIONS_FOR_COMPUTED_COLUMNS

Boolean

Specifies whether Liquibase commands like diff and snapshot preserve the parent relationship for computed columns. Default: false. Available in Liquibase 4.25.0+. See include-relations-for-computed-columns.

--include-system-classpath globalArgs: {include-system-classpath: "val"} liquibase.includeSystemClasspath LIQUIBASE_INCLUDE_SYSTEM_CLASSPATH

Boolean

Defines whether Liquibase includes the system classpath when resolving classes at runtime.

Default: true. See include-system-classpath.

--license-key globalArgs: {license-key: "val"} liquibase.licenseKey LIQUIBASE_LICENSE_KEY

String

Specifies Liquibase Secure license key that allows using all the functionality of Liquibase Open Source and Liquibase Secure. Deprecated:liquibase.secure.licenseKey. See How to Apply Your Liquibase Secure License Key.

--liquibase-catalog-name globalArgs: {liquibase-catalog-name: "val"} liquibase.liquibaseCatalogName LIQUIBASE_LIQUIBASE_CATALOG_NAME

String

Specifies the catalog to use for Liquibase objects. See liquibase-catalog-name.

--liquibase-schema-name globalArgs: {liquibase-schema-name: "val"} liquibase.liquibaseSchemaName LIQUIBASE_LIQUIBASE_SCHEMA_NAME

String

Specifies the schema to use for the creation of Liquibase objects, like the DATABASECHANGELOG and DATABASECHANGELOGLOCK tracking tables. See liquibase-schema-name.

--liquibase-tablespace-name globalArgs: {liquibase-tablespace-name: "val"} liquibase.liquibaseTablespaceName LIQUIBASE_LIQUIBASE_TABLESPACE_NAME

String

Specifies the tablespace Liquibase uses to store objects that are being deployed to your database. See liquibase-tablespace-name.

--log-channels globalArgs: {log-channels: "val"} liquibase.logChannels LIQUIBASE_LOG_CHANNELS

String

Controls which log channels have their level set by the liquibase.logLevel setting. Separate multiple values with commas.

Example:

liquibase,org.mariadb.jdbc. To set the level of all channels, use ALL. See log-channels.

--log-file globalArgs: {log-file: "val"} liquibase.logFile LIQUIBASE_LOG_FILE

String

Sends logging messages of what Liquibase does during runtime to a file. See log-file.

--log-format globalArgs: {log-format: "val"} liquibase.logFormat LIQUIBASE_LOG_FORMAT

String

Sets the format of log output to the console or to log files. Liquibase Open Source users default to unstructured TEXT logs to the console or output log files. Liquibase Secure users have the option to set the value as JSON or JSON_PRETTY to enable JSON-structured log files to the console or output log files. Default: TEXT. See log-format.

--log-level globalArgs: {log-level: "val"} liquibase.logLevel LIQUIBASE_LOG_LEVEL

String

Controls the amount of messages that are generated when running Liquibase commands. The official log levels are: OFF, SEVERE, WARNING, INFO, FINE.

Default: SEVERE. See log-level.

--mirror-console-messages-to-log globalArgs: {mirror-console-messages-to-log: "val"} liquibase.mirrorConsoleMessagesToLog LIQUIBASE_MIRROR_CONSOLE_MESSAGES_TO_LOG

Boolean

When set to true, the console messages are mirrored to the logs as [liquibase.ui]to provide a more complete picture of Liquibase operations to log analysis tools. Set to false to change this behavior.

Default: true. See mirror-console-messages-to-log.

--mirror-output-to-console globalArgs: {mirror-output-to-console: "val"} liquibase.mirrorOutputToConsole LIQUIBASE_MIRROR_OUTPUT_TO_CONSOLE

Boolean

Liquibase Secure 4.28.0+.

When set to true, Liquibase mirrors command output to both the specified output file and the console. When set to false, Liquibase either sends command output to the output file (if it exists) or the console (if no output file exists).

Default: false. See mirror-output-to-console.

--missing-property-mode globalArgs: {missing-property-mode: "val"} liquibase.missingPropertyMode LIQUIBASE_MISSING_PROPERTY_MODE

String

Specifies how to handle changelog property expressions where a value is not set. For example, a string null when no address property was defined. Values can be: PRESERVE, which leaves the string as-is; EMPTY, which replaces it with an empty string; or ERROR, which stops processing with an error.

Default:PRESERVE.

--monitor-performance globalArgs: {monitor-performance: "val"} liquibase.monitorPerformance LIQUIBASE_MONITOR_PERFORMANCE

Boolean

Enables performance tracking. If true, data is stored to a liquibase-TIMESTAMP.jfr file in your working directory. Any other value will enable tracking and be used as the name of the file to write the data to.

Default: false. See monitor-performance.

--on-missing-include-changelog globalArgs: {on-missing-include-changelog: "val"} liquibase.onMissingIncludeChangelog LIQUIBASE_ON_MISSING_INCLUDE_CHANGELOG

String

Controls how Liquibase behaves when it cannot find a changelog specified in an include tag in the root changelog. Can be set to WARN or FAIL. See on-missing-include-changelog.

--output-file globalArgs: {output-file: "val"} liquibase.outputFile LIQUIBASE_OUTPUT_FILE

String

File path to where the command output will be written. If not specified, output goes to STDOUT. See --output-file.

--output-file-encoding globalArgs: {output-file-encoding: "val"} liquibase.outputFileEncoding LIQUIBASE_OUTPUT_FILE_ENCODING

String

Determines which character encoding to use when writing Liquibase command outputs to external files.

Default: UTF-8. See output-file-encoding.

--output-line-separator globalArgs: {output-line-separator: "val"} liquibase.outputLineSeparator LIQUIBASE_OUTPUT_LINE_SEPARATOR

String

Specifies the string that separates lines in STDOUT.

Default: OS default line separator (LF or CRLF). See output-line-separator.

--preserve-classpath-prefix-in-normalized-paths globalArgs: {preserve-classpath-prefix-in-normalized-paths: "val"} liquibase.preserveClasspathPrefixInNormalizedPaths LIQUIBASE_PRESERVE_CLASSPATH_PREFIX_IN_NORMALIZED_PATHS

Boolean

Liquibase 4.30.0+.

Forces Liquibase to preserve the prefix classpath:while it normalizes the resource path you have specified in --classpath.

Default: false. See preserve-classpath-prefix-in-normalized-paths.

--preserve-schema-case globalArgs: {preserve-schema-case: "val"} liquibase.preserveSchemaCase LIQUIBASE_PRESERVE_SCHEMA_CASE

Boolean

Liquibase 4.12.0+.

Determines whether Liquibase treats schema and catalog names as case-sensitive. If true, Liquibase quotes your schema and catalog names in the SQL it generates, so the formatting of mixed-case names is preserved.

If false, Liquibase does not quote schema and catalog names, so the SQL it generates may have different casing than your database.

Default:false.

--secure-global-end-delimiter globalArgs: {secure-global-end-delimiter: "val"} liquibase.secure.globalEndDelimiter LIQUIBASE_PRO_GLOBAL_END_DELIMITER

String

Liquibase 4.25.1+. Specifies a default delimiter for all changesets. Default: ;. See secure-global-end-delimiter.

It is a best practice not to use --secure-global-end-delimiter on changesets you are running with a native executor. Native executors handle delimiters natively.

--secure-global-end-delimiter-prioritized globalArgs: {secure-global-end-delimiter-prioritized: "val"} liquibase.secure.globalEndDelimiter.prioritized LIQUIBASE_PRO_GLOBAL_END_DELIMITER_PRIORITIZED

Boolean

Liquibase 4.25.1+. Specifies whether the --secure-global-end-delimiter parameter always takes priority over other Liquibase delimiter settings. Default: false. See secure-global-end-delimiter-prioritized.

--secure-global-strip-comments globalArgs: {secure-global-strip-comments: "val"} liquibase.secure.globalStripComments LIQUIBASE_PRO_GLOBAL_STRIP_COMMENTS

Boolean

Liquibase 4.29.2+.

Specifies default SQL comment stripping behavior for all changesets.

Default:true. See secure-global-strip-comments.

--secure-global-strip-comments-prioritized globalArgs: {secure-global-strip-comments-prioritized: "val"} liquibase.secure.globalStripComments.prioritized LIQUIBASE_PRO_GLOBAL_STRIP_COMMENTS_PRIORITIZED

Boolean

Liquibase 4.29.2+.

Specifies whether the --secure-global-strip-comments parameter always takes priority over other Liquibase SQL comment stripping settings.

Default: false. See secure-global-strip-comments-prioritized.

--secure-mark-unused-not-drop globalArgs: {secure-mark-unused-not-drop: "val"} liquibase.secure.markUnusedNotDrop LIQUIBASE_PRO_MARK_UNUSED_NOT_DROP

Boolean

Defines whether a column will be dropped when running diff-changelog or generate-changelog.

If false, Liquibase continues to drop columns rather than marking them as unused.

If true, creates the markUnused changes instead of the dropColumn changes and overrides the behavior.

Default: false.

--secure-sql-inline globalArgs: {secure-sql-inline: "val"} liquibase.secure.sql.inline LIQUIBASE_PRO_SQL_INLINE

Boolean

If true, Liquibase generates changesets with SQL-based changes embedded instead of saving them to an external file.

Default: false.

--secure-strict globalArgs: {secure-strict: "val"} liquibase.proStrict LIQUIBASE_PRO_STRICT

Boolean

If true, Liquibase checks for the existence of Liquibase Secure resource files that you've specified.

Default: false. See secure-strict.

--secure-synonyms-drop-public globalArgs: {secure-synonyms-drop-public: "val"} liquibase.secure.synonyms.drop.public LIQUIBASE_PRO_SYNONYMS_DROP_PUBLIC

Boolean

If false, Liquibase does not drop public synonyms in diff-changelog or drop-all.

Default: true.

--prompt-for-non-local-database globalArgs: {prompt-for-non-local-database: "val"} liquibase.promptForNonLocalDatabase LIQUIBASE_PROMPT_FOR_NON_LOCAL_DATABASE

Boolean

Determines whether Liquibase prompts you if you access a non-local database.

Default: false.

--property-provider-class globalArgs: {property-provider-class: "val"} liquibase.propertyProviderClass LIQUIBASE_PROPERTY_PROVIDER_CLASS

String

Implements the Properties class to provide additional driver properties.

--search-path globalArgs: {search-path: "val"} liquibase.searchPath LIQUIBASE_SEARCH_PATH

String

Specifies the locations to search for migration files in. Separate multiple paths with commas. See search-path.

--secure-parsing globalArgs: {secure-parsing: "val"} liquibase.secureParsing LIQUIBASE_SECURE_PARSING

Boolean

Enables the validation of the custom XSD files. If true, removes functionality from file parsers which could be used insecurely. Examples include (but not limited to) disabling remote XML entity support. If you use custom XSD files, set this parameter to false. (Liquibase 4.8.0 and later versions).

Default: true.

--should-run globalArgs: {should-run: "val"} liquibase.shouldRun LIQUIBASE_SHOULD_RUN

Boolean

Determines whether Liquibase commands execute.

Default: true. See should-run.

--should-snapshot-data globalArgs: {should-snapshot-data: "val"} liquibase.shouldSnapshotData LIQUIBASE_SHOULD_SNAPSHOT_DATA

Boolean

Determines whether Liquibase snapshots your database data.

Default: false. See should-snapshot-data.

--show-banner globalArgs: {show-banner: "val"} liquibase.showBanner LIQUIBASE_SHOW_BANNER

Boolean

If true, shows a Liquibase banner on startup.

Default: true.

--sql-log-level globalArgs: {sql-log-level: "val"} liquibase.sql.logLevel LIQUIBASE_SQL_LOG_LEVEL

String

Defines the level of logging for SQL statements. Valid values are <FINE|INFO|WARNING|SEVERE|OFF>. 4.6.2+.

Default: FINE. See sql-log-level.

--sql-show-sql-warnings globalArgs: {sql-show-sql-warnings: "val"} liquibase.sql.showSqlWarnings LIQUIBASE_SQL_SHOW_SQL_WARNINGS

Boolean

Specifies whether Liquibase logs should include Java SQLWarning messages. Available in 4.25.0+.

Default: true. See sql-show-sql-warnings.

--strict globalArgs: {strict: "val"} liquibase.strict LIQUIBASE_STRICT

Boolean

If true, Liquibase enforces certain best practices and proactively looks for common errors.

Default: false. See strict.

--support-property-escaping globalArgs: {support-property-escaping: "val"} liquibase.supportPropertyEscaping LIQUIBASE_SUPPORT_PROPERTY_ESCAPING

Boolean

If true, Liquibase supports escaping changelog parameters using a colon. Example: ${:user.name}.

Default: false.

--supports-method-validation-level globalArgs: {supports-method-validation-level: "val"} liquibase.supportsMethodValidationLevel LIQUIBASE_SUPPORTS_METHOD_VALIDATION_LEVEL

String

Liquibase 4.29.0+

. Controls the level of validation to check if a change's supports() method is properly implemented. Valid values are OFF, WARN, and FAIL.

Default: WARN. See supports-method-validation-level.

--suppress-liquibase-sql globalArgs: {suppress-liquibase-sql: "val"} liquibase.suppressLiquibaseSql LIQUIBASE_SUPPRESS_LIQUIBASE_SQL

Boolean

Liquibase 4.29.2+.

When set to true, Liquibase excludes DATABASECHANGELOG table and DATABASECHANGELOGHISTORY table SQL from the console and log output of *-sql commands, such as update-sql and rollback-sql.

Default: false. See suppress-liquibase-sql.

--trim-load-data-file-header globalArgs: {trim-load-data-file-header: "val"} liquibase.trimLoadDataFileHeader LIQUIBASE_TRIM_LOAD_DATA_FILE_HEADER

Boolean

Liquibase 4.29.0+. Trims whitespace from CSV headers that you call with the loadData Change Type.

Default: false. See trim-load-data-file-header.

--ui-service globalArgs: {ui-service: "val"} liquibase.uiService LIQUIBASE_UI_SERVICE

String

Specifies the default UI service logger used by Liquibase. Valid values are CONSOLE and LOGGER. The default value is CONSOLE.

Default: CONSOLE. Available in Liquibase 4.25.0+. See ui-service.

--use-procedure-schema globalArgs: {use-procedure-schema: "val"} liquibase.useProcedureSchema LIQUIBASE_USE_PROCEDURE_SCHEMA

Boolean

If true, any createProcedure tags with a set schemaName will modify the procedure body with the given schema name.

Default: true.

--validate-xml-changelog-files globalArgs: {validate-xml-changelog-files: "val"} liquibase.validateXmlChangelogFiles LIQUIBASE_VALIDATE_XML_CHANGELOG_FILES

Boolean

If true, will perform XSD validation of XML changelog files. When many XML changelog files are included, this validation may impact Liquibase performance.

Default: true. See validate-xml-changelog-files.

For more information, see DATABASECHANGELOGHISTORY table and dbcl-history.

Parameter

Typ

Definition

--dbclhistory-capture-extensions globalArgs: {dbclhistory-capture-extensions: "val"} liquibase.dbclhistory.captureExtensions LIQUIBASE_DBCLHISTORY_CAPTURE_EXTENSIONS

Boolean

If true, installed extensions are captured in the DATABASECHANGELOGHISTORY table. Liquibase 4.27.0+. Default: true. See --dbclhistory-capture-extensions.

--dbclhistory-capture-sql globalArgs: {dbclhistory-capture-sql: "val"} liquibase.dbclhistory.captureSql LIQUIBASE_DBCLHISTORY_CAPTURE_SQL

Boolean

If true, SQL generated by commands is captured in the DATABASECHANGELOGHISTORY table. Liquibase 4.27.0+. Default: true. See --dbclhistory-capture-sql.

--dbclhistory-enabled globalArgs: {dbclhistory-enabled: "val"} liquibase.dbclhistory.enabled LIQUIBASE_DBCLHISTORY_ENABLED

Boolean

Enables the DATABASECHANGELOGHISTORY table. This table includes records of rollbacks, dropAlls, and repeated runOnChange type activity, which is not available in the standard DATABASECHANGELOG table. Liquibase 4.27.0+. Default: false. See --dbclhistory-enabled.

--dbclhistory-severity globalArgs: {dbclhistory-severity: "val"} liquibase.dbclhistory.severity LIQUIBASE_DBCLHISTORY_SEVERITY

String

The exit code for Liquibase to return if an exception is encountered while recording events to the DATABASECHANGELOGHISTORY table. Valid values are INFO (0), MINOR (1), MAJOR (2), CRITICAL (3), and BLOCKER (4), from least severe to most severe. Liquibase 4.27.0+. Default: 1. See --dbclhistory-severity.

For more information, see runWith.

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--psql-args globalArgs: {psql-args: "val"} liquibase.psql.args LIQUIBASE_PSQL_ARGS

String

Defines extra arguments to pass to the psql executable. For more information, see PSQL documentation.

Note: The delimiter for arguments is a space " ". Do not use a comma "," or semicolon ";".

--psql-keep-temp globalArgs: {psql-keep-temp: "val"} liquibase.psql.keep.temp LIQUIBASE_PSQL_KEEP_TEMP

Boolean

Indicates whether or not to keep a temporary SQL file after the execution of PSQL. If true, the file is not deleted. This setting is not required to keep the temporary file, only create-spool is. Default: false.

--psql-keep-temp-name globalArgs: {psql-keep-temp-name: "val"} liquibase.psql.keep.temp.name LIQUIBASE_PSQL_KEEP_TEMP_NAME

String

Indicates the name of a temporary SQL file after the execution of PSQL. If no file name is specified, a name is automatically generated.

--psql-keep-temp-path globalArgs: {psql-keep-temp-path: "val"} liquibase.psql.keep.temp.path LIQUIBASE_PSQL_KEEP_TEMP_PATH

String

Specify the path in which to store the temporary files after the execution of PSQL. If not specified, the files will be stored in the system's temp directory.

--psql-log-file globalArgs: {psql-log-file: "val"} liquibase.psql.logFile LIQUIBASE_PSQL_LOG_FILE

String

Log file for PSQLoutput.

--psql-path globalArgs: {psql-path: "val"} liquibase.psql.path LIQUIBASE_PSQL_PATH

String

Path to psql executable. For example:

Linux:

/usr/pgsql-15/bin/psql

Windows:

C:\Program Files\PostgreSQL\15\bin\psql.exe

--psql-timeout globalArgs: {psql-timeout: "val"} liquibase.psql.timeout LIQUIBASE_PSQL_TIMEOUT

Integer

Indicates seconds to wait for the psql timeout. -1 disables the timeout. 0 returns an error. Default: 1800 (30 minutes).

--sqlcmd-args globalArgs: {sqlcmd-args: "val"} liquibase.sqlcmd.args LIQUIBASE_SQLCMD_ARGS

String

Defines extra arguments to pass to the sqlcmd executable. For more information, see sqlcmd Utility documentation.

Note: The delimiter for arguments is a space " ". Do not use a comma "," or semicolon ";".

--sqlcmd-catalog-name globalArgs: {sqlcmd-catalog-name: "val"} liquibase.sqlcmd.catalogName LIQUIBASE_SQLCMD_CATALOG_NAME

String

Database to use when running SQLCMD.

--sqlcmd-keep-temp globalArgs: {sqlcmd-keep-temp: "val"} liquibase.sqlcmd.keep.temp LIQUIBASE_SQLCMD_KEEP_TEMP

Boolean

Indicates whether or not to keep a temporary SQL file after the execution of SQLCMD. If true, the file is not deleted. This setting is not required to keep the temporary file, only create-spool is. Default: false.

--sqlcmd-keep-temp-name globalArgs: {sqlcmd-keep-temp-name: "val"} liquibase.sqlcmd.keep.temp.name LIQUIBASE_SQLCMD_KEEP_TEMP_NAME

String

Indicates the name of a temporary SQL file after the execution of SQLCMD. If no file name is specified, a name is automatically generated.

--sqlcmd-keep-temp-overwrite globalArgs: {sqlcmd-keep-temp-overwrite: "val"} liquibase.sqlcmd.keep.temp.overwrite LIQUIBASE_SQLCMD_KEEP_TEMP_OVERWRITE

Boolean

Overwrites any files in the specified directory with the same name. Default: true.

--sqlcmd-keep-temp-path globalArgs: {sqlcmd-keep-temp-path: "val"} liquibase.sqlcmd.keep.temp.path LIQUIBASE_SQLCMD_KEEP_TEMP_PATH

String

Specify the path in which to store the temporary files after the execution of SQLCMD. If not specified, the files will be stored in the system's temp directory.

--sqlcmd-log-file globalArgs: {sqlcmd-log-file: "val"} liquibase.sqlcmd.logFile LIQUIBASE_SQLCMD_LOG_FILE

String

Log file for SQLCMDoutput.

--sqlcmd-path globalArgs: {sqlcmd-path: "val"} liquibase.sqlcmd.path LIQUIBASE_SQLCMD_PATH

String

Path to sqlcmd executable. For example:

Linux:

/opt/mssql-tools/bin/sqlcmd

Windows:

C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\sqlcmd.exe

--sqlcmd-timeout globalArgs: {sqlcmd-timeout: "val"} liquibase.sqlcmd.timeout LIQUIBASE_SQLCMD_TIMEOUT

Integer

Indicates seconds to wait for the sqlcmd timeout. -1 disables the timeout. 0 returns an error. Default: 1800 (30 minutes).

--sqlplus-args globalArgs: {sqlplus-args: "val"} liquibase.sqlplus.args LIQUIBASE_SQLPLUS_ARGS

String

Defines extra arguments to pass to the sqlplus executable. For more information, see SQL Plus documentation.

Note: The delimiter for arguments is a space " ". Do not use a comma "," or semicolon ";".

--sqlplus-create-spool globalArgs: {sqlplus-create-spool: "val"} liquibase.sqlplus.createSpool LIQUIBASE_SQLPLUS_CREATE_SPOOL

Boolean

If true, create an Oracle spool file which captures the SQLPlus output. Default: true. When create spool = false, the spool file does not generate.

--sqlplus-keep-temp globalArgs: {sqlplus-keep-temp: "val"} liquibase.sqlplus.keep.temp LIQUIBASE_SQLPLUS_KEEP_TEMP

Boolean

Indicates whether or not to keep a temporary SQL file after the execution of SQL Plus. If true, the file is not deleted. This setting is not required to keep the temporary file, only create-spool is. Default: false.

--sqlplus-keep-temp-name globalArgs: {sqlplus-keep-temp-name: "val"} liquibase.sqlplus.keep.temp.name LIQUIBASE_SQLPLUS_KEEP_TEMP_NAME

String

Indicates the name of a temporary SQL file after the execution of SQL Plus. If no file name is specified, a name is automatically generated. In Oracle, if no file extension is specified, the file is saved as .lst.

--sqlplus-keep-temp-overwrite globalArgs: {sqlplus-keep-temp-overwrite: "val"} liquibase.sqlplus.keep.temp.overwrite LIQUIBASE_SQLPLUS_KEEP_TEMP_OVERWRITE

Boolean

Overwrites any files in the specified directory with the same name. Default: true.

--sqlplus-keep-temp-path globalArgs: {sqlplus-keep-temp-path: "val"} liquibase.sqlplus.keep.temp.path LIQUIBASE_SQLPLUS_KEEP_TEMP_PATH

String

Specify the path in which to store the temporary files after the execution of SQL Plus. If not specified, the files will be stored in the system's temp directory.

--sqlplus-password globalArgs: {sqlplus-password: "val"} liquibase.sqlplus.password LIQUIBASE_SQLPLUS_PASSWORD

String

Liquibase 4.29.2+. Password to use with the native executor, such as the password for an account with SYSDBA privileges. Liquibase will attempt to use the password exactly as entered.

--sqlplus-path globalArgs: {sqlplus-path: "val"} liquibase.sqlplus.path LIQUIBASE_SQLPLUS_PATH

String

Path to sqlplus executable. For example:

Linux:

/opt/oracle/product/19.0.0/client/bin/sqlplus

or

/u01/app/oracle/product/19.0.0/dbhome_1/bin/sqlplus

Windows:

C:\oracle\product\19.0.0\dbhome_1\bin\sqlplus.exe

--sqlplus-sqlerror globalArgs: {sqlplus-sqlerror: "val"} liquibase.sqlplus.sqlerror LIQUIBASE_SQLPLUS_SQLERROR

String

Control the outcome when Liquibase returns a SQL error. The error clause is passed directly to Oracle. Default: WHENEVER SQLERROR EXIT FAILURE. Accepted values include:

WHENEVER SQLERROR EXIT FAILURE

WHENEVER SQLERROR EXIT ROLLBACK

WHENEVER SQLERROR EXIT ERROR

WHENEVER SQLERROR EXIT WARNING

WHENEVER SQLERROR EXIT SUCCESS

--sqlplus-timeout globalArgs: {sqlplus-timeout: "val"} liquibase.sqlplus.timeout LIQUIBASE_SQLPLUS_TIMEOUT

Integer

Indicates seconds to wait for the sqlplus timeout. -1 disables the timeout. 0 returns an error. Default: 1800 (30 minutes).

--sqlplus-username globalArgs: {sqlplus-username: "val"} liquibase.sqlplus.username LIQUIBASE_SQLPLUS_USERNAME

String

Liquibase 4.29.2+. Username to use with the native executor, such as account.username as sysdba to access Liquibase with an account that has SYSDBA privileges. Liquibase will attempt to use the name exactly as entered.

Operation Reports

For more information, see Operation Reports.

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

Requirement

--reports-enabled globalArgs: {reports-enabled: "val"} liquibase.reports.enabled LIQUIBASE_REPORTS_ENABLED

Boolean

Enables or disables all reports at the global level. Overridden by --report-enabled at the command level. Default: true.

Required (either this or --report-enabled)

--reports-name globalArgs: {reports-name: "val"} liquibase.reports.name LIQUIBASE_REPORTS_NAME

String

Specifies the name of the report file at the global level. Overridden by --report-name at the command level. By default, Liquibase generates a new report file labeled with a timestamp (user's local time). If you set a custom name, Liquibase overwrites the existing file every time you generate a new report. Default: report-<DD-Mon-YYYY-HHmmss>.html.

Optional

--reports-open globalArgs: {reports-open: "val"} liquibase.reports.open LIQUIBASE_REPORTS_OPEN

Boolean

Specifies whether to automatically open the report in your default browser at the global level. Overridden by --report-open at the command level. Default: true.

Optional

--reports-path globalArgs: {reports-path: "val"} liquibase.reports.path LIQUIBASE_REPORTS_PATH

String

Specifies the file path to the report file at the global level. Overridden by --report-path at the command level. Default: ./

Optional

--reports-suppress-exception globalArgs: {reports-suppress-exception: "val"} liquibase.reports.suppressException LIQUIBASE_REPORTS_SUPPRESS_EXCEPTION

Boolean

Liquibase 4.31.0+. Specifies whether to hide exceptions (which may contain SQL) from operation reports at the global level. Overridden by --report-suppress-exception at the command level. Default: false. However:

If --reports-suppress-exception is not set and --reports-suppress-sql=true, Liquibase suppresses all SQL, including exception SQL.

If --reports-suppress-exception=false and --reports-suppress-sql=true, Liquibase suppresses most SQL but shows exception SQL.

Optional

--reports-suppress-sql globalArgs: {reports-suppress-sql: "val"} liquibase.reports.suppressSql LIQUIBASE_REPORTS_SUPPRESS_SQL

Boolean

Liquibase 4.31.0+. Specifies whether to hide changeset SQL in operation reports at the global level. Overridden by --report-suppress-sql at the command level. Default: false.

Optional

For more information, see Structured Logging and Custom and Private Data in Structured Logs.

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--custom-log-data-file cmdArgs: {custom-log-data-file: "val"} liquibase.customLogDataFile LIQUIBASE_CUSTOM_LOG_DATA_FILE

String

Specifies the file that contains the custom data that can be included or excluded from Structured Logs. Available in Liquibase 4.23.2+. See custom-log-data-file.

--custom-log-data-frequency cmdArgs: {custom-log-data-frequency: "val"} liquibase.customLogDataFrequency LIQUIBASE_CUSTOM_LOG_DATA_FREQUENCY

String

Specifies the frequency that custom log data will be included in Structured Logs. Valid values are: ONCE, REPEATED. Default: REPEATED. Available in Liquibase 4.24.0+. See custom-log-data-frequency.

For more information, see Policy Checks and Liquibase Secure Custom Policy Checks.

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--script-python-executable-path cmdArgs: {script-python-executable-path: "val"} liquibase.script.python.executablePath LIQUIBASE_SCRIPT_PYTHON_EXECUTABLE_PATH

Read more: --script-python-executable-path

String

Specifies the path Liquibase uses to run the Python executable associated with a virtual environment. For more information, see Create a Python Virtual Environment.

For more information, see Liquibase Parameters for Amazon DynamoDB Secure and Liquibase Amazon DynamoDB Secure Extension Overview.

Name (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--dynamodb-tracking-tables-billing-mode globalArgs: {dynamodb-tracking-tables-billing-mode: "val"} liquibase.dynamodb.trackingTables.billingMode LIQUIBASE_DYNAMODB_TRACKING_TABLES_BILLING_MODE

Read more: --dynamodb-tracking-tables-billing-mode

String

Initial billing mode for Liquibase tracking tables (DBCL and DBCLL). This controls how you pay for database read/write operations and capacity. Valid values: PROVISIONED and PAY_PER_REQUEST. Default: PAY_PER_REQUEST. See also: BillingModeSummary.

Note: If you want to change the billing mode of the tracking tables after you create them, you must instead use the updateDynamoTable Change Type.

--dynamodb-tracking-tables-provisioned-throughput-read-capacity-units globalArgs: {dynamodb-tracking-tables-provisioned-throughput-read-capacity-units: "val"} liquibase.dynamodb.trackingTables.provisionedThroughput.readCapacityUnits LIQUIBASE_DYNAMODB_TRACKING_TABLES_PROVISIONED_THROUGHPUT_READ_CAPACITY_UNITS

Read more: --dynamodb-tracking-tables-provisioned-throughput-read-capacity-units

Integer

Specifies how many readCapacityUnits to initially use for the PROVISIONED billing mode for Liquibase tracking tables (DBCL and DBCLL). Ignored for the PAY_PER_REQUEST billing mode. Default: 10. See also: Read/write capacity mode.

Note: If you want to change the provisioned throughput values of the tracking tables after you create them, you must instead use the updateDynamoTable or updateTableProvisionedThroughput Change Type.

--dynamodb-tracking-tables-provisioned-throughput-write-capacity-units globalArgs: {dynamodb-tracking-tables-provisioned-throughput-write-capacity-units: "val"} liquibase.dynamodb.trackingTables.provisionedThroughput.writeCapacityUnits LIQUIBASE_DYNAMODB_TRACKING_TABLES_PROVISIONED_THROUGHPUT_WRITE_CAPACITY_UNITS

Read more: --dynamodb-tracking-tables-provisioned-throughput-write-capacity-units

Integer

Specifies how many writeCapacityUnits to initially use for the PROVISIONED billing mode for Liquibase tracking tables (DBCL and DBCLL). Ignored for the PAY_PER_REQUEST billing mode. Default: 10. See also: Read/write capacity mode.

Note: If you want to change the provisioned throughput values of the tracking tables after you create them, you must instead use the updateDynamoTable or updateTableProvisionedThroughput Change Type.

--dynamodb-waiters-enabled globalArgs: {dynamodb-waiters-enabled: "val"} liquibase.dynamodb.waiters.enabled LIQUIBASE_DYNAMODB_WAITERS_ENABLED

Read more: --dynamodb-waiters-enabled

Boolean

Specifies whether to enable or disable the DynamoDbWaiter for all Liquibase DynamoDB operations. When true, Liquibase waits for DynamoDB operations in a changeset to be fully complete before moving onto the next changeset. When false, Liquibase moves onto the next changeset while the first one may still be in a pending state, potentially saving time. When false, Liquibase also suppresses all other --dynamodb-waiter-* parameters. Default: true. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

Warning: If you set this parameter to false, you risk unexpected behavior. You must ensure that any changesets you deploy do not try to access objects that are in a pending state.

--dynamodb-waiters-fail-on-timeout globalArgs: {dynamodb-waiters-fail-on-timeout: "val"} liquibase.dynamodb.waiters.failOnTimeout LIQUIBASE_DYNAMODB_WAITERS_FAIL_ON_TIMEOUT

Read more: --dynamodb-waiters-fail-on-timeout

Boolean

Specifies whether Liquibase fails if the DynamoDbWaiter times out while attempting to verify whether a resource like a table in your DynamoDB database is in a valid state. If true, Liquibase returns 1 when the waiter times out. If false, Liquibase returns 0 when the waiter times out. Default: true. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiters-log-notification-enabled globalArgs: {dynamodb-waiters-log-notification-enabled: "val"} liquibase.dynamodb.waiters.log.notification.enabled LIQUIBASE_DYNAMODB_WAITERS_LOG_NOTIFICATION_ENABLED

Read more: --dynamodb-waiters-log-notification-enabled

Boolean

Specifies whether Liquibase sends you periodic status notifications while the DynamoDbWaiter polls resources in your database. Default: true.

--dynamodb-waiters-log-notification-interval globalArgs: {dynamodb-waiters-log-notification-interval: "val"} liquibase.dynamodb.waiters.log.notification.interval LIQUIBASE_DYNAMODB_WAITERS_LOG_NOTIFICATION_INTERVAL

Read more: --dynamodb-waiters-log-notification-interval

Integer

Specifies the interval in milliseconds for Liquibase to wait between sending status notifications while the DynamoDbWaiter polls resources in your database. Default: 4000.

--dynamodb-waiter-create-fixed-delay-backoff-strategy-duration globalArgs: {dynamodb-waiter-create-fixed-delay-backoff-strategy-duration: "val"} liquibase.dynamodb.waiter.create.fixedDelayBackoffStrategy.duration LIQUIBASE_DYNAMODB_WAITER_CREATE_FIXED_DELAY_BACKOFF_STRATEGY_DURATION

Read more: --dynamodb-waiter-create-fixed-delay-backoff-strategy-duration

Integer

Number of seconds for the DynamoDbWaiter to wait before trying to poll your table again (between attempts). This interval is used between calls to verify that the table is created and operable. Default: 20. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-create-max-attempts globalArgs: {dynamodb-waiter-create-max-attempts: "val"} liquibase.dynamodb.waiter.create.maxAttempts LIQUIBASE_DYNAMODB_WAITER_CREATE_MAX_ATTEMPTS

Read more: --dynamodb-waiter-create-max-attempts

Integer

Maximum number of attempts for the DynamoDbWaiter. The waiter repeatedly polls your table to see if it is created and operable. When the waiter exceeds this number of attempts, it enters a failure state. Default: 25. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-create-total-timeout globalArgs: {dynamodb-waiter-create-total-timeout: "val"} liquibase.dynamodb.waiter.create.totalTimeout LIQUIBASE_DYNAMODB_WAITER_CREATE_TOTAL_TIMEOUT

Read more: --dynamodb-waiter-create-total-timeout

Integer

Total number of seconds for the DynamoDbWaiter to wait for the table to be created and operable. If the waiter sees that the table is in the correct state, the operation finishes and Liquibase moves onto the next changeset, no matter how much time has passed. If the waiter reaches the maximum timeout, Liquibase throws an error. Default: null (disabled). See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-delete-fixed-delay-backoff-strategy-duration globalArgs: {dynamodb-waiter-delete-fixed-delay-backoff-strategy-duration: "val"} liquibase.dynamodb.waiter.delete.fixedDelayBackoffStrategy.duration LIQUIBASE_DYNAMODB_WAITER_DELETE_FIXED_DELAY_BACKOFF_STRATEGY_DURATION

Read more: --dynamodb-waiter-delete-fixed-delay-backoff-strategy-duration

Integer

Number of seconds for the DynamoDbWaiter to wait before trying to poll your table again (between attempts). This interval is used between calls to verify that the table is deleted. Default: 20. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-delete-max-attempts globalArgs: {dynamodb-waiter-delete-max-attempts: "val"} liquibase.dynamodb.waiter.delete.maxAttempts LIQUIBASE_DYNAMODB_WAITER_DELETE_MAX_ATTEMPTS

Read more: --dynamodb-waiter-delete-max-attempts

Integer

Maximum number of attempts for the DynamoDbWaiter. The waiter repeatedly polls your table to see if it is deleted. When the waiter exceeds this number of attempts, it enters a failure state. Default: 25. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-delete-total-timeout globalArgs: {dynamodb-waiter-delete-total-timeout: "val"} liquibase.dynamodb.waiter.delete.totalTimeout LIQUIBASE_DYNAMODB_WAITER_DELETE_TOTAL_TIMEOUT

Read more: --dynamodb-waiter-delete-total-timeout

Integer

Total number of seconds for the DynamoDbWaiter to wait for the table to be deleted. If the waiter sees that the table is in the correct state, the operation finishes and Liquibase moves onto the next changeset, no matter how much time has passed. If the waiter reaches the maximum timeout, Liquibase throws an error. Default: null (disabled). See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-update-fixed-delay-backoff-strategy-duration globalArgs: {dynamodb-waiter-update-fixed-delay-backoff-strategy-duration: "val"} liquibase.dynamodb.waiter.update.fixedDelayBackoffStrategyDuration LIQUIBASE_DYNAMODB_WAITER_UPDATE_FIXED_DELAY_BACKOFF_STRATEGY_DURATION

Read more: --dynamodb-waiter-update-fixed-delay-backoff-strategy-duration

Integer

Number of seconds for the DynamoDbWaiter to wait before trying to poll your table again (between attempts). This interval is used between calls to verify that the table is updated and operable. Default: 20. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-update-max-attempts globalArgs: {dynamodb-waiter-update-max-attempts: "val"} liquibase.dynamodb.waiter.update.maxAttempts LIQUIBASE_DYNAMODB_WAITER_UPDATE_MAX_ATTEMPTS

Read more: --dynamodb-waiter-update-max-attempts

Integer

Maximum number of attempts for the DynamoDbWaiter. The waiter repeatedly polls your table to see if it is updated and operable. When the waiter exceeds this number of attempts, it enters a failure state. Default: 25. See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

--dynamodb-waiter-update-total-timeout globalArgs: {dynamodb-waiter-update-total-timeout: "val"} liquibase.dynamodb.waiter.update.totalTimeout LIQUIBASE_DYNAMODB_WAITER_UPDATE_TOTAL_TIMEOUT

Read more: --dynamodb-waiter-update-total-timeout

Integer

Total number of seconds for the DynamoDbWaiter to wait for the table to be updated and operable. If the waiter sees that the table is in the correct state, the operation finishes and Liquibase moves onto the next changeset, no matter how much time has passed. If the waiter reaches the maximum timeout, Liquibase throws an error. Default: null (disabled). See also: Poll for resource states in the AWS SDK for Java 2.x: Waiters.

For more information, see Liquibase Parameters for Databricks and Using Liquibase with Databricks Platforms.

Name (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--databricks-auth-mechanism globalArgs: {databricks-auth-mechanism: "val"} liquibase.databricks.authMechanism LIQUIBASE_DATABRICKS_AUTH_MECHANISM

Read more: --databricks-auth-mechanism

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the authentication mechanism for Liquibase to use with Databricks. Valid values are: OAUTH. If no value is specified, Liquibase tries to connect using a username and password.

--databricks-catalog globalArgs: {databricks-catalog: "val"} liquibase.databricks.catalog LIQUIBASE_DATABRICKS_CATALOG

Read more: --databricks-catalog

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the catalog for Liquibase to use with Databricks.

--databricks-http-path globalArgs: {databricks-http-path: "val"} liquibase.databricks.httpPath LIQUIBASE_DATABRICKS_HTTP_PATH

Read more: --databricks-http-path

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the HTTP path of the compute resource (a Databricks cluster or a Databricks SQL warehouse) for Liquibase to use.

--databricks-oauth-auth-flow globalArgs: {databricks-oauth-auth-flow: "val"} liquibase.databricks.oauth.authFlow LIQUIBASE_DATABRICKS_OAUTH_AUTH_FLOW

Read more: --databricks-oauth-auth-flow

Integer

Liquibase Secure Databricks extension 1.0.0+. Specifies the OAuth2 authentication flow for the Databricks driver connection. Valid values are: 1. Default: 1.

--databricks-oauth-client-id globalArgs: {databricks-oauth-client-id: "val"} liquibase.databricks.oauth.clientId LIQUIBASE_DATABRICKS_OAUTH_CLIENT_ID

Read more: --databricks-oauth-client-id

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the Client ID for OAuth authentication on Databricks. The Client ID is the service principal's UUID or Application ID value.

--databricks-oauth-client-secret globalArgs: {databricks-oauth-client-secret: "val"} liquibase.databricks.oauth.clientSecret LIQUIBASE_DATABRICKS_OAUTH_CLIENT_SECRET

Read more: --databricks-oauth-client-secret

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the Client Secret for OAuth authentication on Databricks. The Client Secret is the service principal's OAuth Secret value.

--databricks-schema globalArgs: {databricks-schema: "val"} liquibase.databricks.schema LIQUIBASE_DATABRICKS_SCHEMA

Read more: --databricks-schema

String

Liquibase Secure Databricks extension 1.0.0+. Specifies the schema for Liquibase to use with Databricks.

For more information, see Liquibase Parameters for MongoDB and Using Liquibase MongoDB Secure with MongoDB platforms.

Name (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--mongodb-adjust-tracking-tables-on-startup globalArgs: {adjust-tracking-tables-on-startup: "val"} liquibase.mongodb.adjustTrackingTablesOnStartup LIQUIBASE_MONGODB_ADJUST_TRACKING_TABLES_ON_STARTUP

Read more: --mongodb-adjust-tracking-tables-on-startup

Boolean

Validates the Liquibase DATABASECHANGELOG and DATABASECHANGELOGLOCK collections on startup. If they are not up to date with the current release, Liquibase adjusts them. It is a best practice to keep this parameter enabled whenever you upgrade to a new Liquibase version. Default: true.

--mongodb-oidc-authentication-mechanism globalArgs: {mongodb-oidc-authentication-mechanism: "val"} liquibase.mongodb.oidc.authenticationMechanism LIQUIBASE_MONGODB_OIDC_AUTHENTICATION_MECHANISM

Read more: --mongodb-oidc-authentication-mechanism

String

Authentication mechanism for MongoDB. Valid values are: MONGODB-OIDC. If no value is specified, Liquibase tries to connect using a username and password. For more information, see MongoDB: Enterprise Authentication Mechanisms.

--mongodb-oidc-environment globalArgs: {mongodb-oidc-environment: "val"} liquibase.mongodb.oidc.environment LIQUIBASE_MONGODB_OIDC_ENVIRONMENT

Read more: --mongodb-oidc-environment

String

Cloud provider environment for OIDC authentication. Valid values are: azure. Required if --mongodb-oidc-authentication-mechanism is specified.

--mongodb-oidc-oidc-application-id-uri globalArgs: {mongodb-oidc-oidc-application-id-uri: "val"} liquibase.mongodb.oidc.oidcApplicationIDURI LIQUIBASE_MONGODB_OIDC_OIDC_APPLICATION_ID_URI

Read more: --mongodb-oidc-oidc-application-id-uri

String

Application ID URI used for OIDC authentication in cloud providers. For example, with Azure: api://8d719796-c744-4352-aab9-47a52c363907. Required if --mongodb-oidc-authentication-mechanism is specified.

--mongodb-oidc-oidc-client-id globalArgs: {mongodb-oidc-oidc-client-id: "val"} liquibase.mongodb.oidc.oidcClientID LIQUIBASE_MONGODB_OIDC_OIDC_CLIENT_ID

Read more: --mongodb-oidc-oidc-client-id

String

Client ID of the User-Assigned Identity for OIDC authentication.

--mongodb-retry-writes globalArgs: {retry-writes: "val"} liquibase.mongodb.retryWrites LIQUIBASE_MONGODB_RETRY_WRITES

Read more: --mongodb-retry-writes

Boolean

Specifies whether to retry write operations a single time after a failed write. If true, Liquibase appends retryWrites=true to the connection URL. If false, Liquibase appends retryWrites=false. Setting this parameter to false permits Liquibase usage on MongoDB versions not supporting retryWrites, like Amazon DocumentDB. Default: true.

--mongodb-supports-validator globalArgs: {supports-validator: "val"} liquibase.mongodb.supportsValidator LIQUIBASE_MONGODB_SUPPORTS_VALIDATOR

Read more: --mongodb-supports-validator

Boolean

Specifies whether to create the Liquibase tracking collections with validators. Setting this parameter to false permits usage on MongoDB versions not supporting validators. Default: true.

Info

Syntax (--cli)

Type

Description

--help

-h

N/A

Opens the help menu. CLI-only.

--version

-v

N/A

Print version information. CLI-only.

Global report parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--reports-enabled

globalArgs: { reports-enabled: "<true|false>" }

liquibase.reports.enabled: <true|false>

LIQUIBASE_REPORTS_ENABLED=<true|false>

Boolean

Enables or disables all reports at the global level. Overridden by --report-enabled at the command level. Default: true.

--reports-name

globalArgs: { reports-name: "<string>" }

liquibase.reports.name: <string>

LIQUIBASE_REPORTS_NAME=<string>

String

Specifies the name of the report file at the global level. Overridden by --report-name at the command level. If you set a custom name, Liquibase overwrites the existing file every time you generate a new report. Default: report-<DD-Mon-YYYY-HHmmss>.html.

--reports-open

globalArgs: { reports-open: "<true|false>" }

liquibase.reports.open: <true|false>

LIQUIBASE_REPORTS_OPEN=<true|false>

Boolean

Specifies whether to automatically open the report in your default browser at the global level. Overridden by --report-open at the command level. Default: true.

--reports-path

globalArgs: { reports-path: "<string>" }

liquibase.reports.path: <string>

LIQUIBASE_REPORTS_PATH=<string>

String

Specifies the file path to the report file at the global level. Overridden by --report-path at the command level. Default: ./.

--reports-suppress-exception

globalArgs: { reports-suppress-exception: "<true|false>" }

liquibase.reports.suppressException: <true|false>

LIQUIBASE_REPORTS_SUPPRESS_EXCEPTION=<true|false>

Boolean

Liquibase 4.31.0+. Specifies whether to hide exceptions (which may contain SQL) from operation reports at the global level. Overridden by --report-suppress-exception at the command level. Default: false.

--reports-suppress-sql

globalArgs: { reports-suppress-sql: "<true|false>" }

liquibase.reports.suppressSql: <true|false>

LIQUIBASE_REPORTS_SUPPRESS_SQL=<true|false>

Boolean

Liquibase 4.31.0+. Specifies whether to hide changeset SQL in operation reports at the global level. Overridden by --report-suppress-sql at the command level. Default: false.

Mongo shell integration arguments

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--mongosh-args

globalArgs: { mongosh-args: "<string>" }

liquibase.mongosh.args: <string>

LIQUIBASE_MONGOSH_ARGS=<string>

String

Defines extra arguments to pass to the mongosh executable.

--mongosh-executor

globalArgs: { mongosh-executor: "<string>" }

liquibase.mongosh.executor: <string>

LIQUIBASE_MONGOSH_EXECUTOR=<string>

String

Name of a custom executor you can specify.

--mongosh-keep-temp

globalArgs: { mongosh-keep-temp: "<true|false>" }

liquibase.mongosh.keep.temp: <true|false>

LIQUIBASE_MONGOSH_KEEP_TEMP=<true|false>

Boolean

Indicates whether or not to keep a temporary SQL file after the execution of Mongosh. Default: false.

--mongosh-keep-temp-name

globalArgs: { mongosh-keep-temp-name: "<string>" }

liquibase.mongosh.keep.temp.name: <string>

LIQUIBASE_MONGOSH_KEEP_TEMP_NAME=<string>

String

Indicates the name of a temporary SQL file after the execution of Mongosh.

--mongosh-keep-temp-path

globalArgs: { mongosh-keep-temp-path: "<string>" }

liquibase.mongosh.keep.temp.path: <string>

LIQUIBASE_MONGOSH_KEEP_TEMP_PATH=<string>

String

Specify the path in which to store the temporary files after the execution of Mongosh.

--mongosh-log-file

globalArgs: { mongosh-log-file: "<string>" }

liquibase.mongosh.logFile: <string>

LIQUIBASE_MONGOSH_LOG_FILE=<string>

String

Log file for Mongo shell output.

--mongosh-path

globalArgs: { mongosh-path: "<string>" }

liquibase.mongosh.path: <string>

LIQUIBASE_MONGOSH_PATH=<string>

String

Path to mongosh executable.

--mongosh-timeout

globalArgs: { mongosh-timeout: "<int>" }

liquibase.mongosh.timeout: <int>

LIQUIBASE_MONGOSH_TIMEOUT=<int>

Integer

Indicates seconds to wait for the mongosh timeout. -1 disables timeout. 0 returns error. Default: 1800 (30 minutes).

Configuration

Syntax (propertiesFile, ENV_VAR) or (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

liquibase.home

liquibase.home: <string>

LIQUIBASE_HOME=<string>

String

The directory that points to the Liquibase installation location.

liquibase.launcher.debug

liquibase.launcher.debug: <string>

LIQUIBASE_LAUNCHER_DEBUG=<string>

String

Enables the Liquibase debug mode, which produces more log output and allows the user to debug their database.

liquibase.launcher.parent.classloader

liquibase.launcher.parent.classloader: <string>

LIQUIBASE_LAUNCHER_PARENT_CLASSLOADER=<string>

String

The classloader that runs Liquibase via either system or thread.

Default: system

--default-logger-level

globalArgs: { default-logger-level: "<string>" }

liquibase.defaultLoggerLevel: <string>

LIQUIBASE_DEFAULT_LOGGER_LEVEL=<string>

String

[Deprecated]

Specifies a default logging level.

Default: INFO

--filter-log-messages

globalArgs: { filter-log-messages: "<true|false>" }

liquibase.filterLogMessages: <true|false>

LIQUIBASE_FILTER_LOG_MESSAGES=<true|false>

Boolean

[Deprecated]

Defines whether Liquibase filters log messages for potentially insecure data.

Default: true

--native-executor

globalArgs: { native-executors: "<string>" }

liquibase.nativeExecutor: <string>

LIQUIBASE_NATIVE_EXECUTOR=<string>

String

[Deprecated]

Name of a custom executor you can specify.

Command parameters

You can use command parameters with only certain commands or groups of commands.

Note: Syntax for each parameter is specified in kebab-case (CLI and flow file), camelCase (properties file and JAVA_OPTS), and MACRO_CASE (environment variable).

For best results, specify all commands and parameters in the --kebab-case format in the CLI. If your preference is camelCase, it also works in the CLI.

Note: It is best practice only to use alphanumeric characters and underscores in your liquibase-schema-name, because your database may not support hyphens and other special characters. If you must use hyphens, you must escape the lines containing hyphens. Many databases, such as PostgreSQL, MySQL, and SQLite support using quotes to escape characters. For example, "schemas-with-a-hyphen-or-dash-symbol-in-the-name". You'll need to refer to the documentation for your DBMS to determine if it supports quoted identifiers. You do not need to use quoted identifiers if you are using objectQuotingStrategy="QUOTE_ALL_OBJECTS" at the changelog/changeset level.

Operation report parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--drift-severity

cmdArgs: { drift-severity: "<string>" }

liquibase.command.<cmdName>.driftSeverity: <string>

LIQUIBASE_COMMAND_<CMDNAME>_DRIFT_SEVERITY=<string>

String

Specifies the severity level of all error types in the drift report (changed, missing, or unexpected content). Valid values are INFO (0), MINOR (1), MAJOR (2), CRITICAL (3), and BLOCKER (4), from least severe to most severe.

--drift-severity-changed

cmdArgs: { drift-severity-changed: "<string>" }

liquibase.command.<cmdName>.driftSeverityChanged: <string>

LIQUIBASE_COMMAND_<CMDNAME>_DRIFT_SEVERITY_CHANGED=<string>

String

Specifies the severity level of changed content in the drift report. Valid values are INFO (0), MINOR (1), MAJOR (2), CRITICAL (3), and BLOCKER (4). Overrides --drift-severity for changed content only. Default: INFO.

--drift-severity-missing

cmdArgs: { drift-severity-missing: "<string>" }

liquibase.command.<cmdName>.driftSeverityMissing: <string>

LIQUIBASE_COMMAND_<CMDNAME>_DRIFT_SEVERITY_MISSING=<string>

String

Specifies the severity level of missing content in the drift report. Valid values are INFO (0), MINOR (1), MAJOR (2), CRITICAL (3), and BLOCKER (4). Overrides --drift-severity for missing content only. Default: INFO.

--drift-severity-unexpected

cmdArgs: { drift-severity-unexpected: "<string>" }

liquibase.command.<cmdName>.driftSeverityUnexpected: <string>

LIQUIBASE_COMMAND_<CMDNAME>_DRIFT_SEVERITY_UNEXPECTED=<string>

String

Specifies the severity level of unexpected content in the drift report. Valid values are INFO (0), MINOR (1), MAJOR (2), CRITICAL (3), and BLOCKER (4). Overrides --drift-severity for unexpected content only. Default: INFO.

--open-report

cmdArgs: { open-report: "<true|false>" }

liquibase.command.<cmdName>.openReport: <true|false>

LIQUIBASE_COMMAND_<CMDNAME>_OPEN_REPORT=<true|false>

Boolean

If true, automatically opens the report in your default browser. Default: false.

--report-enabled

cmdArgs: { report-enabled: "<true|false>" }

liquibase.command.<cmdName>.reportEnabled: <true|false>

LIQUIBASE_COMMAND_<CMDNAME>_REPORT_ENABLED=<true|false>

Boolean

Enables a report at the command level. Overrides the global parameter --reports-enabled. Default: true.

--report-name

cmdArgs: { report-name: "<string>" }

liquibase.command.<cmdName>.reportName: <string>

LIQUIBASE_COMMAND_<CMDNAME>_REPORT_NAME=<string>

String

Specifies the name of the report file at the command level. Overrides --reports-name.

--report-path

cmdArgs: { report-path: "<string>" }

liquibase.command.<cmdName>.reportPath: <string>

LIQUIBASE_COMMAND_<CMDNAME>_REPORT_PATH=<string>

String

Specifies the file path to the report file at the command level. Overrides --reports-path. Default: ./.

--report-suppress-exception

cmdArgs: { report-suppress-exception: "<true|false>" }

liquibase.command.<cmdName>.reportSuppressException: <true|false>

LIQUIBASE_COMMAND_<CMDNAME>_REPORT_SUPPRESS_EXCEPTION=<true|false>

Boolean

Liquibase 4.31.0+. Specifies whether to hide exceptions from the operation report at the command level. Overrides --reports-suppress-exception. Default: false.

--report-suppress-sql

cmdArgs: { report-suppress-sql: "<true|false>" }

liquibase.command.<cmdName>.reportSuppressSql: <true|false>

LIQUIBASE_COMMAND_<CMDNAME>_REPORT_SUPPRESS_SQL=<true|false>

Boolean

Liquibase 4.31.0+. Specifies whether to hide changeset SQL in operation reports at the command level. Overrides --reports-suppress-sql. Default: false.

General command parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--add-row

cmdArgs: { add-row: "<true|false>" }

liquibase.command.addRow: <true|false>

LIQUIBASE_COMMAND_ADD_ROW=<true|false>

Boolean

Liquibase Secure only. If true, creates a new DATABASECHANGELOG row for the tag. If false, adds the tag to the last existing row. Liquibase 4.23.1+.

Default: false

--change-exec-listener-class

cmdArgs: { change-exec-listener-class: "<string>" }

liquibase.command.changeExecListenerClass: <string>

LIQUIBASE_COMMAND_CHANGE_EXEC_LISTENER_CLASS=<string>

String

Fully-qualified class specifying ChangeExecListener.

--change-exec-listener-properties-file

cmdArgs: { change-exec-listener-properties-file: "<string>" }

liquibase.command.changeExecListenerPropertiesFile: <string>

LIQUIBASE_COMMAND_CHANGE_EXEC_LISTENER_PROPERTIES_FILE=<string>

String

Path to a properties file for ChangeExecListenerClass.

--changeset-author

cmdArgs: { changeset-author: "<string>" }

liquibase.command.changesetAuthor: <string>

LIQUIBASE_COMMAND_CHANGESET_AUTHOR=<string>

String

The author of the changeset. Supports * as a wildcard.

--changeset-id

cmdArgs: { changeset-id: "<string>" }

liquibase.command.changesetId: <string>

LIQUIBASE_COMMAND_CHANGESET_ID=<string>

String

The changeset ID from the changelog.

--changeset-identifier

cmdArgs: { changeset-identifier: "<string>" }

liquibase.command.changesetIdentifier: <string>

LIQUIBASE_COMMAND_CHANGESET_IDENTIFIER=<string>

String

Unique changeset tag in filepath::id::author format.

--changeset-path

cmdArgs: { changeset-path: "<string>" }

liquibase.command.changesetPath: <string>

LIQUIBASE_COMMAND_CHANGESET_PATH=<string>

String

The path to the changelog containing the changeset to target.

--context-filter

cmdArgs: { context-filter: "<string>" }

liquibase.command.contextFilter: <string>

LIQUIBASE_COMMAND_CONTEXT_FILTER=<string>

String

Specifies the changeset contexts to match.

--count

cmdArgs: { count: "<integer>" }

liquibase.command.count: <integer>

LIQUIBASE_COMMAND_COUNT=<integer>

Integer

Specifies the number of changes to apply.

--data-output-directory

cmdArgs: { data-output-directory: "<string>" }

liquibase.command.dataOutputDirectory: <string>

LIQUIBASE_COMMAND_DATA_OUTPUT_DIRECTORY=<string>

String

Directory to send loadData output CSV files generated by diff-changelog or generate-changelog.

--date

cmdArgs: { date: "<string>" }

liquibase.command.date: <string>

LIQUIBASE_COMMAND_DATE=<string>

String

The date and time to roll back to. Format: YYYY-MM-DD HH:MM:SS or YYYY-MM-DD'T'HH:MM:SS.

--drop-dbclhistory

cmdArgs: { drop-dbclhistory: "<true|false>" }

liquibase.command.dropDbclhistory: <true|false>

LIQUIBASE_COMMAND_DROP_DBCLHISTORY=<true|false>

Boolean

If true, drops the DATABASECHANGELOGHISTORY table along with other database objects owned by the user. Liquibase 4.27.0+.

Default: false

--dbms

cmdArgs: { dbms: "<string>" }

liquibase.command.dbms: <string>

LIQUIBASE_COMMAND_DBMS=<string>

String

Specifies which database type a changeset is to be used for. The keywords all and none are also available.

--default-catalog-name

cmdArgs: { default-catalog-name: "<string>" }

liquibase.command.defaultCatalogName: <string>

LIQUIBASE_COMMAND_DEFAULT_CATALOG_NAME=<string>

String

Name of the default catalog to use for the database connection.

--default-schema-name

cmdArgs: { default-schema-name: "<string>" }

liquibase.command.defaultSchemaName: <string>

LIQUIBASE_COMMAND_DEFAULT_SCHEMA_NAME=<string>

String

Name of the default schema to use for the database connection.

--diff-types

cmdArgs: { diff-types: "<string>" }

liquibase.command.diffTypes: <string>

LIQUIBASE_COMMAND_DIFF_TYPES=<string>

String

Types of objects to compare. Comma-separated list (no spaces).

--drop-all-require-force

cmdArgs: { drop-all-require-force: "<true|false>" }

liquibase.command.dropAllrequireForce: <true|false>

LIQUIBASE_COMMAND_DROP_ALL_REQUIRE_FORCE=<true|false>

Boolean

If true, requires the user to specify --force to use the drop-all command. Liquibase 4.27.0+.

Default: false

--exclude-objects

cmdArgs: { exclude-objects: "<string>" }

liquibase.command.excludeObjects: <string>

LIQUIBASE_COMMAND_EXCLUDE_OBJECTS=<string>

String

Objects to exclude from diff.

--force-on-partial-changes

cmdArgs: { force-on-partial-changes: "<true|false>" }

liquibase.command.forceOnPartialChanges: <true|false>

LIQUIBASE_COMMAND_FORCE_ON_PARTIAL_CHANGES=<true|false>

Boolean

Liquibase Secure only. When --rollback-on-error=true, controls whether Liquibase rolls back partially invalid changesets.

--include-catalog

cmdArgs: { include-catalog: "<true|false>" }

liquibase.command.includeCatalog: <true|false>

LIQUIBASE_COMMAND_INCLUDE_CATALOG=<true|false>

Boolean

If true, the catalog will be included in generated changesets.

Default: false

--include-objects

cmdArgs: { include-objects: "<string>" }

liquibase.command.includeObjects: <string>

LIQUIBASE_COMMAND_INCLUDE_OBJECTS=<string>

String

Objects to include in diff.

--include-schema

cmdArgs: { include-schema: "<true|false>" }

liquibase.command.includeSchema: <true|false>

LIQUIBASE_COMMAND_INCLUDE_SCHEMA=<true|false>

Boolean

If true, the schema will be included in generated changesets.

Default: false

--include-tablespace

cmdArgs: { include-tablespace: "<true|false>" }

liquibase.command.includeTablespace: <true|false>

LIQUIBASE_COMMAND_INCLUDE_TABLESPACE=<true|false>

Boolean

Include the tablespace attribute in the changelog.

Default: false

--labels

cmdArgs: { labels: "<string>" }

liquibase.command.labels: <string>

LIQUIBASE_COMMAND_LABELS=<string>

String

Specifies the changeset labels to match.

--output-directory

cmdArgs: { output-directory: "<string>" }

liquibase.command.outputDirectory: <string>

LIQUIBASE_COMMAND_OUTPUT_DIRECTORY=<string>

String

The directory where database documentation is generated.

--output-schemas

cmdArgs: { output-schemas: "<string>" }

liquibase.command.outputSchemas: <string>

LIQUIBASE_COMMAND_OUTPUT_SCHEMAS=<string>

String

Replaces schemas in the output changelog. Comma-separated list; size must match --schemas.

--overwrite-output-file

cmdArgs: { overwrite-output-file: "<true|false>" }

liquibase.command.overwriteOutputFile: <true|false>

LIQUIBASE_COMMAND_OVERWRITE_OUTPUT_FILE=<true|false>

Boolean

Determines whether generate-changelog can overwrite an existing changelog.

Default: false

--reference-liquibase-catalog-name

cmdArgs: { reference-liquibase-catalog-name: "<string>" }

liquibase.command.referenceLiquibaseCatalogName: <string>

LIQUIBASE_COMMAND_REFERENCE_LIQUIBASE_CATALOG_NAME=<string>

String

Reference database catalog to use for Liquibase objects. Liquibase 4.24.0+.

--reference-liquibase-schema-name

cmdArgs: { reference-liquibase-schema-name: "<string>" }

liquibase.command.referenceLiquibaseSchemaName: <string>

LIQUIBASE_COMMAND_REFERENCE_LIQUIBASE_SCHEMA_NAME=<string>

String

Reference database schema to use for Liquibase objects. Liquibase 4.24.0+.

--replace-if-exists-types

cmdArgs: { replace-if-exists-types: "<string>" }

liquibase.command.replaceIfExistsTypes: <string>

LIQUIBASE_COMMAND_REPLACE_IF_EXISTS_TYPES=<string>

String

Change Types for which Liquibase sets replaceIfExists="true". Liquibase 4.26.0+.

--rollback-on-error

cmdArgs: { rollback-on-error: "<true|false>" }

liquibase.command.rollbackOnError: <true|false>

LIQUIBASE_COMMAND_ROLLBACK_ON_ERROR=<true|false>

Boolean

Liquibase Secure only. If any changeset fails, stops and rolls back all changesets just deployed. Liquibase 4.18.0+.

Default: false

--rollback-script

cmdArgs: { rollback-script: "<string>" }

liquibase.command.rollbackScript: <string>

LIQUIBASE_COMMAND_ROLLBACK_SCRIPT=<string>

String

The path to the script to use to perform the rollback.

--run-on-change-types

cmdArgs: { run-on-change-types: "<string>" }

liquibase.command.runOnChangeTypes: <string>

LIQUIBASE_COMMAND_RUN_ON_CHANGE_TYPES=<string>

String

Change Types for which Liquibase sets runOnChange="true". Liquibase 4.26.0+.

--schemas

cmdArgs: { schemas: "<string>" }

liquibase.command.schemas: <string>

LIQUIBASE_COMMAND_SCHEMAS=<string>

String

Database schemas to include objects from.

--show-summary

cmdArgs: { show-summary: "<string>" }

liquibase.command.showSummary: <string>

LIQUIBASE_COMMAND_SHOW_SUMMARY=<string>

String

Produces a summary list of changesets skipped and why. Valid values: OFF, SUMMARY, VERBOSE. Liquibase 4.24.0+.

Default: SUMMARY

--show-summary-output

cmdArgs: { show-summary-output: "<string>" }

liquibase.command.showSummaryOutput: <string>

LIQUIBASE_COMMAND_SHOW_SUMMARY_OUTPUT=<string>

String

Output destination for the update summary. Valid values: LOG, CONSOLE, ALL. Liquibase 4.24.0+.

--skip-object-sorting

cmdArgs: { skip-object-sorting: "<true|false>" }

liquibase.command.skipObjectSorting: <true|false>

LIQUIBASE_COMMAND_SKIP_OBJECT_SORTING=<true|false>

Boolean

If true, skips object sorting so objects are ordered as returned by your database. Liquibase 4.27.0+.

--snapshot-filters

cmdArgs: { snapshot-filters: "<string>" }

liquibase.command.snapshotFilters: <string>

LIQUIBASE_COMMAND_SNAPSHOT_FILTERS=<string>

String

Controls which types of objects to include in the snapshot. Liquibase Secure 4.26.0+.

--snapshot-format

cmdArgs: { snapshot-format: "<string>" }

liquibase.command.snapshotFormat: <string>

LIQUIBASE_COMMAND_SNAPSHOT_FORMAT=<string>

String

Output format for snapshot. Valid values: JSON, YAML, TXT.

Default: TXT

--sql

cmdArgs: { sql: "<string>" }

liquibase.command.sql: <string>

LIQUIBASE_COMMAND_SQL=<string>

String

The SQL string to execute.

--sql-file

cmdArgs: { sql-file: "<string>" }

liquibase.command.sqlFile: <string>

LIQUIBASE_COMMAND_SQL_FILE=<string>

String

The file where SQL statements are stored.

--tag

cmdArgs: { tag: "<string>" }

liquibase.command.tag: <string>

LIQUIBASE_COMMAND_TAG=<string>

String

The tag identifying which tagged changesets to evaluate.

--tag-version

cmdArgs: { tag-version: "<string>" }

liquibase.command.tagVersion: <string>

LIQUIBASE_COMMAND_TAG_VERSION=<string>

String

Tag version when multiple instances exist. Valid values: NEWEST, OLDEST.

--verbose

cmdArgs: { verbose: "<true|false>" }

liquibase.command.verbose: <true|false>

LIQUIBASE_COMMAND_VERBOSE=<true|false>

Boolean

Specifies the detail level of the command output.

Default: false

Policy check parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--checks-scope

String

The Liquibase component to run checks against. Valid values: changelog, database.

--property-substitution-enabled

Boolean

If true, changesets are evaluated after property substitution. Default: true.

--auto-enable-new-checks

cmdArgs: { auto-enable-new-checks: "<true|false>" }

liquibase.command.checks.<subcommand>.autoEnableNewChecks: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_AUTO_ENABLE_NEW_CHECKS=<true|false>

Boolean

Automatically enable new policy checks in liquibase.checks.conf when they are available.

Default: false

--auto-update

cmdArgs: { auto-update: "<ON|OFF>" }

liquibase.command.checks.<subcommand>.autoUpdate: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_AUTO_UPDATE=<string>

String

Allows automatic backup and updating of the liquibase.checks-settings.conf file when new policy checks are available.

Default: OFF

--cache-changelog-file-contents

cmdArgs: { cache-changelog-file-contents: "<true|false>" }

liquibase.command.checks.<subcommand>.cacheChangelogFileContents: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CACHE_CHANGELOG_FILE_CONTENTS=<true|false>

Boolean

If true, sqlFile Change Type contents are cached in memory to improve performance.

Default: true

--changelog-file

cmdArgs: { changelog-file: "<string>" }

liquibase.command.checks.<subcommand>.changelogFile: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHANGELOG_FILE=<string>

String

The changelog file against which you execute checks when running liquibase checks run.

--changeset-filter

cmdArgs: { changeset-filter: "<ALL|PENDING>" }

liquibase.command.checks.<subcommand>.changesetFilter: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHANGESET_FILTER=<string>

String

Specifies whether policy checks run on ALL changesets or only PENDING changesets.

Default: ALL

--check-name

cmdArgs: { check-name: "<string>" }

liquibase.command.checks.<subcommand>.checkName: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECK_NAME=<string>

String

The name of the check(s) to target. Comma-separated list; prefix with ! to exclude.

--check-rollbacks

cmdArgs: { check-rollbacks: "<true|false>" }

liquibase.command.checks.<subcommand>.checkRollbacks: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECK_ROLLBACKS=<string>

String

Allow changeset rollback code to be analyzed for compliance with policy checks.

Default: false

--check-status

cmdArgs: { check-status: "<string>" }

liquibase.command.checks.<subcommand>.checkStatus: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECK_STATUS=<string>

String

Only show checks in the specified status. Valid values: ENABLED, DISABLED, ALL.

Default: ALL

--checks-output

cmdArgs: { checks-output: "<string>" }

liquibase.command.checks.<subcommand>.checksOutput: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECKS_OUTPUT=<string>

String

Specify which parts of the checks run output to show.

Default: all

--checks-packages

cmdArgs: { checks-packages: "<string>" }

liquibase.command.checks.<subcommand>.checksPackages: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECKS_PACKAGES=<string>

String

If using a checks packages file, specify which packages to run as a comma-separated list.

--checks-scripts-enabled

cmdArgs: { checks-scripts-enabled: "<true|false>" }

liquibase.command.checks.<subcommand>.checksScriptsEnabled: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECKS_SCRIPTS_ENABLED=<true|false>

Boolean

Allow execution of custom script checks.

Default: false

--checks-scripts-path

cmdArgs: { checks-scripts-path: "<string>" }

liquibase.command.checks.<subcommand>.checksScriptsPath: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECKS_SCRIPTS_PATH=<string>

String

Only allow custom scripts from the specified directories to execute.

--checks-settings-file

cmdArgs: { checks-settings-file: "<string>" }

liquibase.command.checks.<subcommand>.checksSettingsFile: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_CHECKS_SETTINGS_FILE=<string>

String

Specifies the checks settings file to use with policy checks commands.

--disable

cmdArgs: { disable: "<true|false>" }

liquibase.command.checks.<subcommand>.disable: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_DISABLE=<true|false>

Boolean

Disable all qualifying checks in the checks settings file.

Default: true

--enable

cmdArgs: { enable: "<true|false>" }

liquibase.command.checks.<subcommand>.enable: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_ENABLE=<true|false>

Boolean

Enable all qualifying checks in the checks settings file.

Default: false

--force

cmdArgs: { force: "<true|false>" }

liquibase.command.checks.<subcommand>.force: <true|false>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_FORCE=<true|false>

Boolean

If true, Liquibase does not ask for confirmation when you run this command.

Default: false

--format

cmdArgs: { format: "<TXT|JSON>" }

liquibase.command.checks.<subcommand>.format: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_FORMAT=<string>

String

Sets the format of the check output. Valid values: TXT, JSON.

Default: TXT

--package-contents

cmdArgs: { package-contents: "<string>" }

liquibase.command.checks.<subcommand>.packageContents: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_PACKAGE_CONTENTS=<string>

String

One or more comma-separated relative paths to checks settings files to bundle into the checks package.

--package-file

cmdArgs: { package-file: "<string>" }

liquibase.command.checks.<subcommand>.packageFile: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_PACKAGE_FILE=<string>

String

The relative or fully qualified path and filename of the checks package YAML file to create.

Default: liquibase.checks-package.yaml

--package-name

cmdArgs: { package-name: "<string>" }

liquibase.command.checks.<subcommand>.packageName: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_PACKAGE_NAME=<string>

String

The name of the checks package object to create inside the checks package YAML file.

--schemas

cmdArgs: { schemas: "<string>" }

liquibase.command.checks.<subcommand>.schemas: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_SCHEMAS=<string>

String

The schemas to check when --checks-scope contains database.

--severity

cmdArgs: { severity: "<0|1|2|3|4>" }

liquibase.command.checks.<subcommand>.severity: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_SEVERITY=<string>

String

Set the severity return code (0–4) when the check is triggered.

Default: 0

--show-cols

cmdArgs: { show-cols: "<string>" }

liquibase.command.checks.<subcommand>.showCols: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_SHOW_COLS=<string>

String

Only show the specified columns. Options: id, checkname, type, priority, shortname, scope, status, severity, customization, description, all.

Default: shortname,scope,severity,customization,description

--sql-parser-fail-severity

cmdArgs: { sql-parser-fail-severity: "<0|1|2|3|4>" }

liquibase.command.checks.<subcommand>.sqlParserFailSeverity: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_SQL_PARSER_FAIL_SEVERITY=<string>

String

Severity returned when a check fails due to a SQL parse error. Values: 0 (INFO), 1 (MINOR), 2 (MAJOR), 3 (CRITICAL), 4 (BLOCKER). Defaults to the executed check's severity.

--url

cmdArgs: { url: "<string>" }

liquibase.command.checks.<subcommand>.url: <string>

LIQUIBASE_COMMAND_CHECKS_<SUBCOMMAND>_URL=<string>

String

The JDBC database connection URL.

Init parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--recursive

cmdArgs: { recursive: "<true|false>" }

liquibase.command.init.copy.recursive: <true|false>

LIQUIBASE_COMMAND_INIT_COPY_RECURSIVE=<true|false>

Boolean

Recursively copy files from the source directory.

Default: false

--source

cmdArgs: { source: "<string>" }

liquibase.command.init.copy.source: <string>

LIQUIBASE_COMMAND_INIT_COPY_SOURCE=<string>

String

Source directory where the project files will be copied from.

Default: .

--target

cmdArgs: { target: "<string>" }

liquibase.command.init.copy.target: <string>

LIQUIBASE_COMMAND_INIT_COPY_TARGET=<string>

String

Path to the directory where the project files will be created.

--changelog-file

cmdArgs: { changelog-file: "<string>" }

liquibase.command.init.project.changelog-file: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_CHANGELOG_FILE=<string>

String

Relative or fully qualified path to the changelog file.

Default: example-changelog

--format

cmdArgs: { format: "<sql|xml|json|yaml|yml>" }

liquibase.command.init.project.format: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_FORMAT=<string>

String

Format of the project changelog file.

Default: sql

--keep-temp-files

cmdArgs: { keep-temp-files: "<true|false>" }

liquibase.command.init.project.keepTempFiles: <true|false>

LIQUIBASE_COMMAND_INIT_PROJECT_KEEP_TEMP_FILES=<true|false>

Boolean

For remote project locations, do not delete temporary project files.

Default: false

--password

cmdArgs: { password: "<string>" }

liquibase.command.init.project.password: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_PASSWORD=<string>

String

Password to use to connect to the database.

Default: letmein

--project-defaults-file

cmdArgs: { project-defaults-file: "<string>" }

liquibase.command.init.project.projectDefaultsFile: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_PROJECT_DEFAULTS_FILE=<string>

String

File with default Liquibase properties.

Default: liquibase.properties

--project-dir

cmdArgs: { project-dir: "<string>" }

liquibase.command.init.project.projectDir: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_PROJECT_DIR=<string>

String

An optional parameter used to specify the directory containing files (existing or to be auto-created) to be used with Liquibase.

Default: ./

--project-guide

cmdArgs: { project-guide: "<on|off>" }

liquibase.command.init.project.projectGuide: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_PROJECT_GUIDE=<string>

String

Turns on or off the CLI interactive mode.

Default: on

--url

cmdArgs: { url: "<string>" }

liquibase.command.init.project.url: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_URL=<string>

String

The JDBC database connection URL.

Default: jdbc:h2:tcp://localhost:9090/mem:dev

--username

cmdArgs: { username: "<string>" }

liquibase.command.init.project.username: <string>

LIQUIBASE_COMMAND_INIT_PROJECT_USERNAME=<string>

String

Username to connect to the database.

Default: dbuser

--bind-address

cmdArgs: { bind-address: "<string>" }

liquibase.command.init.startH2.bindAddress: <string>

LIQUIBASE_COMMAND_INIT_START_H2_BIND_ADDRESS=<string>

String

Network address to bind to.

Default: 127.0.0.1

--db-port

cmdArgs: { db-port: "<string>" }

liquibase.command.init.startH2.dbPort: <string>

LIQUIBASE_COMMAND_INIT_START_H2_DB_PORT=<string>

String

Port to run the h2 database on.

Default: 9090

--launch-browser

cmdArgs: { launch-browser: "<true|false>" }

liquibase.command.init.startH2.launchBrowser: <true|false>

LIQUIBASE_COMMAND_INIT_START_H2_LAUNCH_BROWSER=<true|false>

Boolean

Whether to open a browser to the database's web interface.

Default: true

--password

cmdArgs: { password: "<string>" }

liquibase.command.init.startH2.password: <string>

LIQUIBASE_COMMAND_INIT_START_H2_PASSWORD=<string>

String

Password to use for the created h2 user.

Default: letmein

--username

cmdArgs: { username: "<string>" }

liquibase.command.init.startH2.username: <string>

LIQUIBASE_COMMAND_INIT_START_H2_USERNAME=<string>

String

Username to create in h2.

Default: dbuser

--web-port

cmdArgs: { web-port: "<string>" }

liquibase.command.init.startH2.webPort: <string>

LIQUIBASE_COMMAND_INIT_START_H2_WEB_PORT=<string>

String

Port to run h2's web interface on.

Default: 8080

Connection profile parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--changelog-file

String

Specifies the root changelog file to execute.

--driver

String

The JDBC driver class.

--driver-properties-file

String

The JDBC driver properties file.

--password

cmdArgs: { password: "<string>" }

liquibase.command.password: <string>

LIQUIBASE_COMMAND_PASSWORD=<string>

String

Password to connect to the target database.

--reference-default-catalog-name

cmdArgs: { reference-default-catalog-name: "<string>" }

liquibase.command.referenceDefaultCatalogName: <string>

LIQUIBASE_COMMAND_REFERENCE_DEFAULT_CATALOG_NAME=<string>

String

The reference default catalog name to use for the database connection.

--reference-default-schema-name

cmdArgs: { reference-default-schema-name: "<string>" }

liquibase.command.referenceDefaultSchemaName: <string>

LIQUIBASE_COMMAND_REFERENCE_DEFAULT_SCHEMA_NAME=<string>

String

The reference default schema name to use for the database connection.

--reference-driver

cmdArgs: { reference-driver: "<string>" }

liquibase.command.referenceDriver: <string>

LIQUIBASE_COMMAND_REFERENCE_DRIVER=<string>

String

The JDBC driver class for the reference database.

--reference-driver-properties-file

cmdArgs: { reference-driver-properties-file: "<string>" }

liquibase.command.referenceDriverPropertiesFile: <string>

LIQUIBASE_COMMAND_REFERENCE_DRIVER_PROPERTIES_FILE=<string>

String

The JDBC driver properties file for the reference database.

--reference-password

cmdArgs: { reference-password: "<string>" }

liquibase.command.referencePassword: <string>

LIQUIBASE_COMMAND_REFERENCE_PASSWORD=<string>

String

Password to connect to the reference database.

--reference-schemas

cmdArgs: { reference-schemas: "<string>" }

liquibase.command.referenceSchemas: <string>

LIQUIBASE_COMMAND_REFERENCE_SCHEMAS=<string>

String

Comma-separated list of reference schemas to use in diff operations.

--reference-url

cmdArgs: { reference-url: "<string>" }

liquibase.command.referenceUrl: <string>

LIQUIBASE_COMMAND_REFERENCE_URL=<string>

String

The JDBC connection URL for the reference database.

--reference-username

cmdArgs: { reference-username: "<string>" }

liquibase.command.referenceUsername: <string>

LIQUIBASE_COMMAND_REFERENCE_USERNAME=<string>

String

Username to connect to the reference database.

--url

cmdArgs: { url: "<string>" }

liquibase.command.url: <string>

LIQUIBASE_COMMAND_URL=<string>

String

The JDBC connection URL for the target database.

--username

cmdArgs: { username: "<string>" }

liquibase.command.username: <string>

LIQUIBASE_COMMAND_USERNAME=<string>

String

Username to connect to the target database.

Property substitution

Syntax

Description

-D<property.name>=<property.value>

CLI only. Pass a name/value pair for substitution in the changelog(s).

On Windows, surround the property name in quotation marks if it contains a dot. For example: -D"property.name"=value.

Flow file parameters

Syntax (--cli, {flow-file}, propertiesFile, ENV_VAR)

Type

Description

--flow-file

cmdArgs: { flow-file: "<string>" }

liquibase.command.flowFile: <string>

LIQUIBASE_COMMAND_FLOW_FILE=<string>

String

The path to the configuration YAML file which contains one or more "stages" of commands to be executed in a liquibase flow operation.

Default: liquibase.flowfile.yaml

--flow-file-strict-parsing

cmdArgs: { flow-file-strict-parsing: "<true|false>" }

liquibase.command.flowFileStrictParsing: <true|false>

LIQUIBASE_COMMAND_FLOW_FILE_STRICT_PARSING=<true|false>

Boolean

If true, parse flow file YAML to allow only Liquibase flow file-specific properties, indentations, and structures.

Default: true

--flow-shell-interpreter

cmdArgs: { flow-shell-interpreter: "<string>" }

liquibase.command.flowShellInterpreter: <string>

LIQUIBASE_COMMAND_FLOW_SHELL_INTERPRETER=<string>

String

The default interpreter used to execute shell commands. Examples include bash, sh, and cmd.

--flow-shell-keep-temp-files

cmdArgs: { flow-shell-keep-temp-files: "<true|false>" }

liquibase.command.flowShellKeepTempFiles: <true|false>

LIQUIBASE_COMMAND_FLOW_SHELL_KEEP_TEMP_FILES=<true|false>

Boolean

If true, do not delete temporary files created by the shell command execution.

Default: false