I need a tool which can receive the schemas of a master and a target databases (generated by a tool e.g. mysqldump -d --routines --triggers --events) and generates an update script to update the target database.

|                        +--------------+                              
|    Master DB dump      |              |                              
|                        |     +--------v-------+                      
+------------------------+     |                |     +----------------+
                               | Migration Tool +----->Alter Statements|
                               |                |     +----------------+
+------------------------+               |                             
|                        |               |                             
|   Target DB dump       +---------------+                             

I've tried Database Comparer v 6.2 Standalone Utility which is awesome. However it is not smart enough to detect column rename actions and simply drop and create a renamed column. The desired program, should ask user to choose between rename or drop/create actions.

  • 1
    I'm considering putting a bounty here or asking a separate question, as my requirements are coming pretty close: I'd need something like this with the additional requirements of: open-source, Linux, works with MySQL and SQLite. Guess our requirements are not a match, but simply overlapping? Solutions for mine would match yours, but not vice-versa? – Izzy Apr 6 '15 at 12:49
  • @Izzy think SQLite part of your requirements need a separate question. There is very little change that a single utility support both of those RDBMSs. I will be grateful to see you bounty here. – PHPst Apr 6 '15 at 14:17
  • @Izzy Did you try the linked software? Perhaps there is some configs. – PHPst Apr 6 '15 at 14:19
  • Afraid so, yes. And I was thinking either-or (if it wouldn't justify a separate Q I'd place a bounty here). And no, I cannot try the linked software: that's Windows only, I need it on Linux (and no, not emulated via Wine or whatever, too much overhead that). Moreover, it doesn't mention SQLite in its list of supported RDBMSs – which is what I'd need it for primarily. – Izzy Apr 6 '15 at 14:22
  • Btw: a simple google-fu brought me to one of our sister-sites: Comparing Sqlite databases. And despite the "SQLite" in its title, other RDBMSes are also covered, so you might want to give it a look, too! SchemaCrawler looks promising for both of us, btw :) – Izzy Apr 6 '15 at 14:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.