The validate command checks and identifies any possible errors in a changelog that can cause the update command to fail.


The validate command is mainly used when you want to detect if there are any issues with a changelog before running the update command.

With the help of the validate command, you can avoid a partial update, where only some changesets are applied due to an error in your changelog file.

Use the validate command to ensure that:

  • The XML/YAML/JSON/formatted SQL is structured correctly
  • Referenced files can be found
  • There are no duplicated id/author/file combinations
  • There aren't any checksum errors
  • Any required or not allowed attributes are correct for your database

Running the validate command

To run the validate command, you can specify the driver, classpath, and URL in your file. For more information, see Creating and configuring a file. You can also specify these properties in your command line.

Then run the validate command:

liquibase --changeLogFile=oracle_runWith_changelog.xml validate

Note: Enter the name of the changelog you want to use in place of oracle_runWith_changelog.xml.

validate global attributes

Attribute Definition Requirement
--changeLogFile * The root changelog Required
--url The JDBC database connection URL Required
--username The database username Required
--password The database password Required

* Liquibase will check nested changelogs for definitions of the changesets to validate.

Note: The username and password attributes are not required for connections and systems which use alternate means of authentication.