
Liquibase Pro (legacy)
Version control has reduced database change risk and supports safe rollbacks
What is our primary use case?
My main use case for Liquibase is database versioning and change set management.
A specific example of how I use Liquibase for database versioning and change set management is that it ensures my schemas are versioned instead of losing track of them over time. Liquibase automatically rolls back changes if there are problems during a release, making the process simple.
In addition to my main use case, Liquibase has helped us solve the issue of reverting changes.
What is most valuable?
The best features Liquibase offers are the schema change sets and the change tracking on any kind of change in the database.
I definitely find that the change tracking feature makes my workflow easier.
Liquibase has positively impacted my organization by eliminating the risk around database changes.
Eliminating that risk has affected my team and business overall by removing costly downtime when trying to revert a problem deploy with a database.
What needs improvement?
I cannot think of anything at the moment regarding how Liquibase can be improved.
I am uncertain about Liquibase's AI capabilities regarding its governance and security.
I am uncertain about Liquibase's AI capabilities regarding its accuracy and reliability of output.
For how long have I used the solution?
I have been using Liquibase for 12 years.
What do I think about the stability of the solution?
Liquibase is stable.
Which solution did I use previously and why did I switch?
I did not previously use a different solution.
What's my experience with pricing, setup cost, and licensing?
My experience with pricing, setup cost, and licensing is that it is easy since it is open source.
Which other solutions did I evaluate?
Before choosing Liquibase, I did not evaluate other options.
What other advice do I have?
The advice I would give to others looking into using Liquibase is to make sure you read the documentation. I would rate this product 9 out of 10.
Automated database change management has increased deployment frequency and supports audits
What is our primary use case?
How has it helped my organization?
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.
What is most valuable?
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.
What needs improvement?
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.
For how long have I used the solution?
I have been using Liquibase for a total of four years.
What other advice do I have?
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.
Daily database version control has ensured consistent schemas and confident rollbacks
What is our primary use case?
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.
What is most valuable?
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.
What needs improvement?
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.
For how long have I used the solution?
I have continuously used Liquibase for the last four years.
How was the initial setup?
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.
What other advice do I have?
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.
Reliable Version-Controlled Schema Changes with Easy Rollbacks
Supports multiple databases with consistent deployment workflows
Easy rollback and automation for safer releases
Debugging failures and error messages can be unclear
XML/YAML syntax can feel verbose and hard to maintain
Ensures consistent deployments across environments (dev, test, prod)
Reduces errors and speeds up releases with automated migrations
Incredible DB Change Tracking with Easy CI/CD Integration
Automated database syncing has reduced manual effort but still needs a more intuitive first use
What is our primary use case?
My main use case for Liquibase is syncing different databases. I have an RDS cluster with different databases, and when there is a change in one database, I sync the other databases with the same changes.
I created a Jenkins pipeline with designed workflows. Using that pipeline, if there is a change in one database or multiple DDL or DML changes occur, developers can use the pipeline to make changes directly in one database and sync to other databases.
How has it helped my organization?
Liquibase has positively impacted my organization by reducing the time spent syncing databases.
Manual overhead has been significantly reduced, making Liquibase a valuable tool for us.
What is most valuable?
Liquibase's best features handle all the overhead of syncing. We do not have to plan any DML or DDL changes manually and apply them to the database. It also reduces the risk of inconsistent changes.
Liquibase reduces the risk of inconsistent changes in my experience by syncing the database easily, and there is no manual intervention required.
What needs improvement?
Liquibase could be improved in several ways. Some facilities could be enhanced, and for first-time users, it could be more intuitive rather than overwhelming.
For how long have I used the solution?
I have been using Liquibase for more than two years.
What other advice do I have?
Liquibase is overall good software, but for first-time users, it could be more intuitive. Everything else works well. I would rate this review as a six.
Database-as-code has transformed how we track schema changes and manage controlled migrations
What is our primary use case?
My main use case for Liquibase is database-as-code, which we use for creating table schemas, maintaining migrations, and ensuring that in production, if rollbacks happen, then it's more controlled than running raw SQL.
I can give you a quick specific example of how I've used Liquibase for migration. Although we have not used it for rollbacks until now, we do use it for managing our scripts during migration.
Liquibase is a database-as-code provider, and that is pretty much how we use it.
What is most valuable?
The best features Liquibase offers include CI/CD integration, which we really appreciate because we didn't have a lot of issues integrating it into our existing CI pipelines, and the changeset and changelog, which are the source of truth that effectively tell us how the database changes are taking effect.
The CI/CD integration helped my workflow by improving visibility with the changelog and changeset. For the CI part, Maven and Gradle builds are already available, so we just use the Maven plugin and it was pretty straightforward.
There is something called Liquibase Validate as well, which helps with pre-deployment checks. We use the update SQL command for dry-run approvals.
Liquibase has positively impacted my organization by providing a way to manage database migrations instead of maintaining raw SQL, which comes with the issue of not being able to track certain schema updates or new table creations. With Liquibase, you have that history through the changelog and changeset tables, which maintain that history of changes.
What needs improvement?
Liquibase can be improved by addressing the issue that changelog files could conflict with Git if they're not modularized properly. While we create one file per feature, rollbacks are not magical and require significant consideration, and large diff operations can also be very slow, affecting performance.
We only use MySQL for now, so there's nothing related to any exotic database features, and we're not consuming anything on that side either.
For how long have I used the solution?
I have been working in my current field for about two years.
Which deployment model are you using for this solution?
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
A good database change management tool
There are also scenarios where scripts can be dependent on each other, in that case defining dependencies is quite complex
To solve this we started using the Liquibase, we have setup a pipeline with the help of which it becomes very easy to maintain the versions
Easy to use, but we were not able to delete some of the tables because of a security issue
What is our primary use case?
I have worked on the Liquibase commands, Liquibase updates, Liquibase storeback, and some basic commands from Liquibase. We were using the Docker image installed from the AWS CI/CD, downloading this Liquibase image, and updating the command from AWS DevOps.
What is most valuable?
I'm not very into data engineering, but Liquibase is the first tool I have worked on from a data perspective. We were using the SQL server, which our clients found somewhat complex. So, they opted for Liquibase because it is easy. The solution is easy to use, and it has very clear documentation.
What needs improvement?
We were not able to delete some of the tables because of a security issue.
For how long have I used the solution?
I have done the POC project with Liquibase for six months.
How are customer service and support?
Whenever we face any issue, we contact the Liquibase support team, who are very supportive and give us quick responses.
How was the initial setup?
The solution's initial setup is easy if we use the Docker version. We have done a POC on our local tool. It was easy to install Liquibase in our local CLI.
What's my experience with pricing, setup cost, and licensing?
Liquibase is an open-source solution. If you are using Liquibase, you need to update its license. I think Liquibase is affordable for our organization.
What other advice do I have?
We were not able to delete some of the tables because of a security issue. We reached out to Liquibase because we thought the issue was from the Liquibase side, but it was from our end. We restarted the security team from our organization, which sorted our issue. My last project was a finance project, and they were relying on Liquibase only for database deployments.
I would recommend the solution to other users. Liquibase is very easy to use if you do CI/CD deployment for the database. The solution's commands and documentation are very easy to understand. The solution is very easy to learn, and I was able to learn it in two weeks. Liquibase is a user-friendly open-source tool.
Overall, I rate the solution a seven out of ten.
Offers integration with multiple databases, stable product and reduced our manual intervention
What is our primary use case?
People automate code-based technologies, but there can be a lack of automation for databases. This tool is used for database automation in DevOps.
What is most valuable?
It can be integrated with multiple databases like MySQL, MSSQL, and PostgreSQL. The biggest benefit is automating database scripts and manually backing up the database.
It has a rollback capability, but it has not impacted our operations. It's pretty normal.
What needs improvement?
It has been improved a lot in terms of automation, but there is still room for improvement.
There is a lot of improvement to be made in terms of automation documentation. This tool is pretty much new for everyone.
Compared to Jenkins, a CI tool where you integrate your code and run it for quality checks, which has alternative tools like TeamCity, Liquibase is one of the biggest tools for database automation.
There is documentation available on the website, but it should be improved.
For how long have I used the solution?
I have been using it for one and a half years.
What do I think about the stability of the solution?
It is a stable product.
What do I think about the scalability of the solution?
It is scalable and performs the same if I add more users. Currently, we have around 650 to 850 members.
How are customer service and support?
We are a service-based company working for a large client in the banking sector, so we didn't get a chance to talk with the Liquibase support team.
How was the initial setup?
For the very first time, the initial setup was a medium complex. One thing we faced issues with is that Liquibase does not show the exact error, which added to the complexity.
Suppose it fails with an error. It won't display the exact error on the CI side. For example, if you integrate Liquibase with Jenkins and your database scripts fail due to syntax errors, it won't show the exact error. It's not user-friendly in that aspect.
What was our ROI?
It will be useful for teams to automate and reduce manual work. It's not only for one specific team; it's across the team.
We saw tangible benefits from using Liquibase in terms of costs and resource savings.
We reduced our manual intervention by not having to reach out to multiple teams. For example, when executing scripts, we had to reach out to the database team every time we developed a new script to deploy it.
By using Liquibase, we write the script and compile it. If the build succeeds, we go back to our deployment tool and update our Active Directory so that it will be deployed into the desired environment. This reduces a lot of manual intervention.
What's my experience with pricing, setup cost, and licensing?
The pricing is fair.
What other advice do I have?
I would recommend using it. To learn Liquibase, one should have some database knowledge. If the person is from a DBA background, they would be able to learn quickly. But if they are from an application or infrastructure role, it's medium complex.
Before getting started, you should thoroughly go through the documentation and follow the latest changes deployed by the Liquibase product team.
Basically, when using the product, you should be able to understand it and stay updated on the latest releases.
Overall, I would rate the product a nine out of ten. Organizations should have this kind of tool to reduce manual intervention. The one point they could improve on is documentation, which they haven't clarified, and they need to work on that a lot.