EnglishFrenchSpanish

OnWorks favicon

mysql-schema-diffp - Online in the Cloud

Run mysql-schema-diffp in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command mysql-schema-diffp that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


mysql-schema-diff - compare MySQL database schemas

SYNOPSIS


mysql-schema-diff [B<options>] B<database1> B<database2>

mysql-schema-diff --help

DESCRIPTION


mysql-schema-diff is a Perl script front-end to the CPAN <http://www.perl.com/CPAN> module
MySQL::Diff <http://search.cpan.org/search?module=MySQL::Diff> which compares the data
structures (i.e. schema / table definitions) of two MySQL <http://www.mysql.com/>
databases, and returns the differences as a sequence of MySQL commands suitable for piping
into mysql which will transform the structure of the first database to be identical to
that of the second (c.f. diff and patch).

Database structures can be compared whether they are files containing table definitions or
existing databases, local or remote.

N.B. The program makes no attempt to compare any of the data which may be stored in the
databases. It is purely for comparing the table definitions. I have no plans to
implement data comparison; it is a complex problem and I have no need of such
functionality anyway. However there is another program coldiff
<http://rossbeyer.net/software/mysql_coldiff/> which does this, and is based on an older
program called datadiff which seems to have vanished off the 'net.

For PostgreSQL there are similar tools such as pgdiff <http://pgdiff.sourceforge.net/> and
apgdiff <http://apgdiff.startnet.biz/>.

EXAMPLES


# compare table definitions in two files
mysql-schema-diff db1.mysql db2.mysql

# compare table definitions in a file 'db1.mysql' with a database 'db2'
mysql-schema-diff db1.mysql db2

# interactively upgrade schema of database 'db1' to be like the
# schema described in the file 'db2.mysql'
mysql-schema-diff -A db1 db2.mysql

# compare table definitions in two databases on a remote machine
mysql-schema-diff --host=remote.host.com --user=myaccount db1 db2

# compare table definitions in a local database 'foo' with a
# database 'bar' on a remote machine, when a file foo already
# exists in the current directory
mysql-schema-diff --host2=remote.host.com --password=secret db:foo bar

OPTIONS


More details to come; for now run "mysql-schema-diff --help".

INTERNALS


For both of the database structures being compared, the following happens:

· If the argument is a valid filename, the file is used to create a temporary database
which "mysqldump -d" is run on to obtain the table definitions in canonicalised form.
The temporary database is then dropped. (The temporary database is named
"test_mysqldiff_temp_something" because default MySQL permissions allow anyone to
create databases beginning with the prefix "test_".)

· If the argument is a database, "mysqldump -d" is run directly on it.

· Where authentication is required, the hostname, username, and password given by the
corresponding options are used (type "mysql-schema-diff --help" for more information).

· Each set of table definitions is now parsed into tables, and fields and index keys
within those tables; these are compared, and the differences outputted in the form of
MySQL statements.

Use mysql-schema-diffp online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Avogadro
    Avogadro
    Avogadro is an advanced molecular
    editor designed for cross-platform use
    in computational chemistry, molecular
    modeling, bioinformatics, materials
    science and ...
    Download Avogadro
  • 2
    XMLTV
    XMLTV
    XMLTV is a set of programs to process
    TV (tvguide) listings and help manage
    your TV viewing, storing listings in an
    XML-based format. There are utilities to
    do...
    Download XMLTV
  • 3
    strikr
    strikr
    Strikr Free Software project. Artifacts
    released under a 'intent based'
    dual license: AGPLv3 (community) and
    CC-BY-NC-ND 4.0 international
    (commercial)...
    Download strikr
  • 5
    GIFLIB
    GIFLIB
    giflib is a library for reading and
    writing gif images. It is API and ABI
    compatible with libungif which was in
    wide use while the LZW compression
    algorithm was...
    Download GIFLIB
  • 6
    Alt-F
    Alt-F
    Alt-F provides a free and open source
    alternative firmware for the DLINK
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F has Samba and NFS;
    supports ext2/3/4...
    Download Alt-F
  • More »

Linux commands

Ad