mysql_coldiff

Latest Version: 1.0

Documentation

mysql_coldiff Usage:

        mysql_coldiff
                   [-v]
                   [-d <database>]
                   [-i <index column>]
                   [-c <column_equivalences>]
                   [-n]

                   [-u <MySQLTM username>]
                   [-p <MySQLTM password>]
                   [-h <MySQLTM host>]

                   <from_table>
                   <to_table>
-v
Displays the version number and exits.
-d
Specifies the default database to be used if none is specified in the <from_table> or <to_table>.
-i
Specifies which column to use to compare rows. This will usually be a PRIMARY index, but need not be.
-c
This argument can be used to compare columns with different names in the two tables, or to restrict the columns that are compared. The <column_equivalences> string must be in a specific format. Colons are used to separate to-from column pairs, and the equals sign is used to demarcate column names. If the columns in the <from_table> are a, b, & c and the columns in the <to_table> are d, e, & f, the <column_equivalences> string would be a=d:b=e:c=f to compare <from_table>.a to <to_table>.d, etc. Similarly, if we wanted to ignore the differences in the b and e columns, and only compare a to do and c to f, the <column_equivalences> string would be a=d:c=f, etc. If no -c argument is given, the program will assume that the column names in <from_table> are the same as those in <to_table>, and compare them that way, ignoring any column name that is not present in both tables.
-n
Ignore all DATE, TIME, DATETIME, and TIMESTAMP columns when comparing data.
-u
This program will use <MySQLTM username> to connect to the MySQLTM server.
-p
This program will use <MySQLTM password> as your password when connecting to the MySQLTM server.
-h
This program will attempt to connect to the specified <MySQLTM host> server.

This program is designed to connect to a MySQLTM server and compare the information in the two tables requested. This program uses the comparison operators in MySQLTM itself, but still may take some time with large tables. Similarly, the two databases should have comparable structures.

If invoked without any arguments, a brief message will be displayed. This program shows the differences in the data between two tables, the <from_table> and the <to_table>. In order to figure out how to compare the two tables, a column in each table must be specified as the <index column> to join on.

These two table arguments can be specified with the MySQLTM format of 'database.table.index_column', where the 'index_column' element is the column to join the two tables on. These table arguments can have one to three elements separated by periods.

If the database is not specified in the table argument, then the default database specified by the -d option will be used. Similarly, if an index_column is not specified in the table argument, the value of the -i option will be used. If the -i option isn't specified, then the program will try to use the index_column name from the other table argument as the index_column name. Similarly, values specified in the table arguments override values specified by -d or -i.