KS DB Merge Tools for MySQL is an easy to use diff & merge tool for MySQL databases. This tool allows users to compare and import/export database objects and data between any two databases. Supported MySQL server versions are 5.5, 5.6, 5.7 and 8.0. KS DB Merge Tools for MySQL can run in two modes - basic free version described below on this page, and paid Pro mode that provides extended functionality and overcomes limitations of the free version.
Free version allows a user to compare table definitions, diff and merge views, functions and stored procedures. It also provides basic data diff and merge facilities, allowing you to compare table contents, merge whole records, or only specific required columns for chosen records.
Pro version has a number of significant functional improvements, such as batch data diff, query result diff and more. In addition, it has a lot of small nice refinements that will make your work much more productive.
Download the installation package, install and run it. On the first run it will ask you to choose which application mode would you prefer - Free, Pro Trial, or to activate Pro with a key that you have purchased.
The rest of this demo is applicable both for Free and Pro. In the case where a screenshot has differences between Free and Pro - you can switch which one you want to see using toggle under the picture.
In the main application window, click 'Open Database(s) (Ctrl+O)' toolbar button to open required databases:
Note that for each database you can save database connectivity settings to the special *.mydbs file which can be opened later with 'Open *.mydbs file(s) (Ctrl+Shift+O)' command, this will allow you to skip filling all these details next time. Once you click OK in this dialog, it will read database object definitions and will provide such kind of summary:
Please note that for tables new/changed counts are not related to table data. Table is counted as changed if it has some column changes, like changed data types or new columns.
Using "total/new/changed" links you can navigate to required object type, for example to Stored procedures:
On this screen using toolbar, you can:
Note that merge/replace/delete actions are not applicable for tables (you could notice that they are marked with DIFF ONLY in Project tab). For other object types this action will display a confirmation screen with the merge script that is going to be executed:
Note that program will ask for your confirmation for any data or object definition change generated by the program. It does not do any modifications on its own. It worth to mention here the Query Result Diff feature in Pro version, where program executes arbitrary user query. This query is entered by user and potentially can contain stored procedure calls or some other statements that can cause data modification.
From the object list you can navigate to some particular object and compare its definition:
The program also allows you to diff and merge table data (with Pro you can also compare data for views). Navigating from Project -> Tables you will see button - 'Сompare data (all records)' for each table, which will open table diff window. If you have many unchanged records and you need only to review what has actually changed - you can use button - 'Compare data (only new or changed records)'. The same way as for objects list you can switch to all/new/changed/new+changed records. Table diff window will indicate new/missed/changed records and missed fields, for changed records it will highlight fields with updated values:
Here you can merge data from one file to another. Mark records and fields that needs to be merged and use toolbar merge buttons. Toolbar selection buttons can be used for batch selection update. Merge action will display a confirmation screen with the merge script that is going to be executed:
Another useful feature is search for text across all project object definitions (but not across the data). This can be very helpful for example if you want to find all references to some particular field or table in all views, functions and stored procedures: