Track, version, and deploy database changes
Changelogs and tracking tables allow Liquibase to help teams track and version database changes and deploy changes.
- Track and version database changes
Developers know which changes have been deployed to the database and which changes have not yet been deployed.
- Deploy changes
Liquibase compares the changelog against the tracking table and only deploys changes that have not been deployed to the database.
Easily author database changes
Liquibase makes it easy to define database changes in a format that’s familiar and comfortable to each user — SQL, XML, JSON, or YAML.
Liquibase uses changelogs to represent a changes to your database.
Learn how to author database changes with Liquibase.
--liquibase formatted sql --changeset nvoxland:create-test-table CREATE TABLE testTable( columnName1 VARCHAR (355) ); --rollback DROP TABLE --rollback testTable
Deploy the same changes across multiple database types
Liquibase allows you to specify the database change you want using SQL or several different database-agnostic formats, including XML, YAML, and JSON. Developers can abstract the database code to make it extremely easy to push out changes to different database types. The abstract format options also offer more flexibility and many more features over a formatted SQL changelog.
Powerful commands for database change management
Liquibase ships with more than 40 commands for managing database changes.
- Update Commands – deploy changes to the database.
- Rollback Commands – rollback previously deployed changes.
- Snapshot Commands – capture the current database state and save it to a changelog.
- Diff Commands – compare database snapshots and/or live databases.
- Status Commands – see the status of changes – deployed or undeployed.
- Quality Check Commands – automated quality checks help you find and fix problems early.
- Flow Commands – portable, platform-independent Liquibase workflows that can run anywhere.
- Utility Commands – manage your Liquibase changelog and tracking files.
liquibase update liquibase rollback liquibase snapshot liquibase diff liquibase status
State and migration-based deployments
Choose state-based or migration-based deployments which, at their root, are about the source of truth. Define how you want the database to look at the end or write the database change scripts for ultimate flexibility and to ensure the performance of database changes.