Deploying database changes manually
Published 12 September 2025
You can manually run state-based or migrations-based deployments using Flyway Desktop or using the command line directly.
For production databases it is recommended to automate deployments using a CI/CD tool, for predictability and reliability.
EDITION: TEAMS EDITION: ENTERPRISE
State-based deployments
State based deployments involve:
- Generate a deployment script by running a comparison between your schema model and target environment. This is done using the prepare command.
- Execute the deployment script against your target environment. This is done using the deploy command.
State-based deployments rely upon Redgate comparison technology and are only available for SQL Server, Oracle, PostgreSQL, and MySQL, and associated flavors.
Migrations-based deployments
Migrations based deployments involve running the migrate command to apply pending migrations to a target environment.
For the migrate command to succeed, the target environment must be baselined in order to create the schema history table. This is usually a one-time process. It can be done as part of the migrate action by setting the baselineOnMigrate
parameter.
In addition to the migrate action, Flyway Desktop can be used to run other commands like baseline, undo, and repair.
Relevant tutorials