My main use case for Liquibase is database change management inside our CI/CD pipelines. Before Liquibase, someone would have to manually run SQL scripts against the database and hope for the best.
The easiest route - we'll conduct a 15 minute phone interview and write up the review for you.
Use our online form to submit your review. It's quick and you can post anonymously.
My main use case for Liquibase is database change management inside our CI/CD pipelines. Before Liquibase, someone would have to manually run SQL scripts against the database and hope for the best.
Liquibase has positively impacted my organization by significantly increasing deployment frequency for database changes. We went from releasing database changes maybe twice a month because they were so manual and nerve-wracking to releasing them as part of every sprint.
I find it hard to put an exact number on how much deployment frequency increased, but the productivity gains are real. The manual database deployment process before involved a DBA, a developer, a change ticket, a scheduled maintenance window, and probably three to four hours of human time.
The best features Liquibase offers include the DATABASECHANGELOG table, which is deceptively simple but is the foundation of everything. Every change that has ever been applied is logged there, including who wrote it, when it ran, which environment, and the checksum.
Having that detailed tracking from Liquibase definitely helps me and my team day-to-day, making troubleshooting or audits easier.
Drift Detection is the other feature I would fight for, as the moment someone makes a manual change to a database outside the pipeline, it shows up. In a regulated environment, that is not just useful, it is necessary.
Liquibase can be improved by helping developers who have never used it before to understand change logs, change sets, contexts, and labels, which takes time. The documentation is good, but there is a gap between reading the docs and actually being confident with it.
I would appreciate more sophisticated pipeline analytics out of the box without having to set everything up manually.
I have been using Liquibase for a total of four years.
On a scale of one to ten, I rate Liquibase overall as an eight.
I rate it an eight because it fundamentally solved the problem that was genuinely painful and had not been solved well by anything else we evaluated.
Regarding Liquibase's AI capabilities, I think its governance and security are solid.
Regarding Liquibase's AI capabilities, I believe its accuracy and reliability of output could be improved.
We deploy Liquibase using GitHub Actions and Jenkins depending on the client environment. Liquibase itself runs as part of the pipeline job, connects to the target database, applies the pending change sets, and exits. There is no separate server to manage.
My experience with pricing, setup cost, and licensing is that the open-source version is free and genuinely capable for most use cases. We moved to Liquibase Secure for the governance features: audit logs, Drift Detection, policy enforcement, and separation of duties.
My main use case for Liquibase is version control of database schema, automatic migration during application startup, and rollback support. It provides environment consistency and maintains the same database across development, testing, production, or SIT environments. Liquibase is configurable with many databases including PostgreSQL, MySQL, Oracle, and SQL Server. I use Liquibase with Spring Boot applications, which makes it function as a version control system for the database.
A specific example of how I have used Liquibase in one of my projects occurred when we started a project from scratch with new requirements. We had a requirement for a notification table and needed to add new columns to existing tables. I maintained the database schema as a versioned component by writing Liquibase scripts to create a new table and alter an existing table, with each change in separate script files. During application startup, these scripts executed automatically if they had not been executed previously in the database, maintaining consistency. Regarding rollback, when I wrote a script to add an index to a column in a table that passed in the development environment but failed in the QA environment, Liquibase supported rolling back the changes that had been executed in one of the environments.
I use Liquibase daily with Spring Boot applications and microservices, placing the migration files in the application. Liquibase acquires the lock when altering a table to add a new index, so I typically schedule these changes during off-business hours to avoid impacting customers.
The best features Liquibase offers include the database rollback mechanism, open source availability at no cost, and the ability to connect to all relational databases including MySQL, SQL Server, and PostgreSQL. Liquibase provides a rollback mechanism, transaction and lock management, database version control, and change tracking. It maintains a history table in one of the schemas that records which changes have been applied and which changes remain pending. If I need to migrate from PostgreSQL to MySQL in the future, I only need to change the URL and credentials without modifying the database structure, as Liquibase handles everything automatically. Liquibase has a vast community with widespread usage, particularly with Spring Boot microservices applications.
Out of all these features, I rely most on database version control in my daily work to maintain a history of when I added columns or tables. The rollback support is excellent and maintains consistency across all environments including development, staging, and production. Liquibase provides a feature to check database differences across multiple environments in QA, development, and production. I can easily compare databases or changes between development and QA environments using this feature.
Liquibase integrates easily with CI/CD tools including Jenkins, GitHub Actions, and GitLab with extensive support for these integrations. Liquibase has positively impacted my organization by maintaining database consistency across all environments. Inconsistent databases increase debugging time for engineers and associated costs, and can impact users. The primary benefit Liquibase provides is database consistency, ensuring a consistent database across all environments.
I believe the official documentation of Liquibase could be more detailed and comprehensive. Although Liquibase has substantial community support through open source tutorials and Stack Overflow resources where people can find solutions, the documentation could be simpler and more explanatory.
I have continuously used Liquibase for the last four years.
The advice I would give to others looking into using Liquibase is that the initial setup might require some time and extra configuration file changes, but that time investment is worthwhile because Liquibase is very helpful when the database is complex and changes occur frequently.
In terms of features and improvability, Liquibase is the best option in the market to maintain database version control.
Regarding Liquibase's AI capabilities, I think it provides additional solutions for security purposes, but I have not used those features. My use case has focused only on database consistency. For database security and governance, Liquibase keeps production data safe with controlled schema changes and separates duties by designating which changes should occur in development, production, and QA environments.
I have not used Liquibase's AI capabilities.
I did not purchase Liquibase through the Google Cloud Marketplace because it is free and available at no cost. There is no need to purchase a paid plan.
I give this product a rating of nine out of ten.