July 12, 2019
dbForge Schema Compare is a great tool for managing and syncing schemas for databases in multiple environments
Score 10 out of 10
Our dev team uses dbForge Schema Compare for MySQL to sync database schemas between environments, look for differences in schema when troubleshooting issues, and generate schema update scripts. Schema update scripts are used to deploy schema updates to our production environment and live in our version control system. Schema Compare's comparisons can be customized for different scenarios and saved for re-used and sharing among the team.
- Compare entire or subset of MySQL tables between databases.
- Configure comparison rules.
- Automatically sync schemas between databases on a per-table basis.
- Save comparison rules for reuse and sharing.
- Execute sync immediately, or save as an SQL script file.
- Command-line tool that can be used to add comparisons to deploy scripts.
- When viewing a table comparison, data is presented in a text-based format (such as a diff viewer). This is inferior to a more structured view like dbForge Data Compare has.
Read Anthony Aziz's full review
We use Schema Compare for two main scenarios:
1) Creating schema upgrade scripts to use when deploying. As our schema grows and changes, we want to tie these changes to a specific build so related code changes will be deployed along with side database schema changes. We do this by using Schema Compare to compare the modified dev database to a stable staging environment database, and then save a sync script. We can then modify that script as needed (perhaps with some update statements for migration), and include that in the deploy artifacts, which our deployment will automatically run.
2) Syncing the developer database with changes from other developers, matching prod schema, or otherwise managing dev database instances.