Liquibase® version 3.8.2 is now available! Get it for free.
2018 XML Announcement
News 5 Ways to Fix a Bad Database Change in Liquibase
04 Dec 2019

- and/or -

All Previous Posts >>

diffDatabase Ant Task

Outputs a diff report of the difference between two databases.

Parameters

Attribute Description Required
outputFile Location of file to save report to. Yes
outputEncoding The character encoding to use when writing to output file. No; defaults to system encoding.
classpathref A reference to the classpath used to run the task with. No
databaseref A reference to the database that Liquibase will connect to. Yes, unless a nested <database> element is present.
referencedatabaseref A reference to the reference database that Liquibase will connect to. Yes, unless a nested <referencedatabase> element is present.
difftypes A comma separated list of diff types to use. No
promptOnNonLocalDatabase If set to true a dialog box with warn you if you attempt to run the Liquibase against a database that is not on localhost. No; default is false.
driver Deprecated: Name of the database driver to connect with. No
url Deprecated: Use <database>'s url attribute instead. The database URL No
username Deprecated:The database username to connect with No
password Deprecated:The password to use when connecting to the database No
defaultSchemaName Deprecated:Schema to use by default for managed database objects and Liquibase control tables No
currentDateTimeFunction Deprecated: Overrides current date time function used in SQL. Useful for unsupported databases No
databaseChangeLogTableName Deprecated: Overrides the name of the databasechangelog table to use No
databaseChangeLogLockTableName Deprecated: Overrides the name of the databasechangeloglock table to use No
referenceDriver Deprecated: The name of the database driver to connect with. No
referenceUrl Deprecated: The base database URL. No
referenceUsername Deprecated: The base database username to connect with. No
referencePassword Deprecated: The base database password. No
logLevel Deprecated: Specifies one of the following logging levels: debug, info, warning, severe, off. The default level is info. No

Parameters Specified as Nested Elements

classpath

The classpath used to run the task with. Optional.

database

Required unless a databaseref attribute is given. See database data type.

referencedatabase

Required unless a referencedatabaseref attribute is given. See database data type.

changelogparameters

Optional. See change log parameters

Examples

<liquibase:diffDatabase outputfile="/path/to/diff.txt">
    <liquibase:database driver="${db1.driver}" url="${db1.url}" user="${db1.user}" password="${db1.password}"/>
    <liquibase:referenceDatabase driver="${db2.driver}" url="${db2.jdbc.url}" user="${db2.user}" password="${db2.password}"/>
</liquibase:diffDatabase>

A basic implementation fo the diffDatabase task.