SQL Comparer - Synchronize your database versions

SQL Comparer - Synchronize your database versions

Compare and synchronize two SQL database schemas and see the difference between them. A very helpful tool when dealing with different versions of a database.


  • Copy SQL exports directly from PhpMyAdmin
  • Comparison results are color highlighted
  • Easily synchronize your database schemas
  • Specific comparison elements can be ignored
  • Get statistics for both schemas

How does it work?

  1. How to compare SQL schemas?
    • Press A button to load .sql file into box A
    • Press B button to load .sql file into box B
    • Press Compare A and B and the program will take care of the rest!
    It is that easy! =)
  2. I only want to compare *, can I do that?
    Yes, you can compare specific elements alone or define what you want to compare. To do that you must open the Ignore settings: Tools -> Ignore settings.

    Simply check the elements you want to ignore and press okay, then press Compare A and B again to see the results. The ignore settings also affect the statistics.

  3. I do not like the colors, can I change them?
    Yes, you open the color settings: Tools -> Comparison colors where you can change the font, backcolor and forecolor of any comparison color.
  4. What is an SQL schema?
    It is a description of the database structure in its formal language, and this comparer is intended for MySQL. Here is an example of a SQL schema:
    CREATE TABLE IF NOT EXISTS `gallery_image_desc` (
      `id` int(11) NOT NULL auto_increment,
      `gallery_idfk` int(11) NOT NULL,
      `imgname` varchar(255) NOT NULL,
      `desc` text NOT NULL,
      `show` tinyint(1) NOT NULL default '1',
      `views` int(11) NOT NULL default '0',
      PRIMARY KEY  (`id`)
    If you do not know what this is, you probably have no use for this comparer  :)
  5. Can it detect my structure?
    The Parser is designed to be very forgiving and to recognize individual parts. I does not require you to have everything in correct order (but the database might) so it will detect most schemas. Consider these two silly schemas:
    MySQL syntax:
    CREATE TABLE `test` (
      `mycol` int(11) NOT NULL auto_increment default '0',
      PRIMARY KEY  (`mycol`)
    Something else:
    CREATE TABLE test (
      auto_increment NOT NULL int 11 PRIMARY KEY default '0' mycol

    The Comparer will scan these two schemas and tell you that they are a perfect match. Which is true, except the second one is completely invalid SQL CREATE TABLE command. Still, would you re-arrange some of its elements you end up with the same table.

    Table names can even be strings and still be accepted:
    CREATE TABLE 'this_is_string' ( ... );
    All these features are to ensure better and more flexible SQL Comparer.

Who is this for?

Have you developed PHP application that uses MySQL database? Do you have a development database (on your localhost) and a live one on some website? Then this tool is for you!