比较Mysql上的2个数据库模式

时间:2009-08-21 22:33:03

标签: mysql database comparison schema

我在数据库中有2个关于同一个应用程序(不同版本)的模式

我想生成差异

的Delta脚本

它存在一些帮助我的工具(开源解决方案应该是完美的)

谢谢

5 个答案:

答案 0 :(得分:1)

Navicat for MySQL使用“结构同步”工具执行此操作,但它不是开源的(US $ 179)。它将比较显示所有差异的表格,并为您提供同步它们的SQL。

您可以使用free 30-day trial进行快速比较。 Windows,Linux和Mac版本。

答案 1 :(得分:1)

答案 2 :(得分:1)

mysql-diff进行架构比较。

答案 3 :(得分:0)

尝试使用dbForge Schema Compare for MySQL。它不是一个免费的工具,但它提供30天的免费试用期。

dbForge Schema Compare for MySQL

答案 4 :(得分:0)

使用以下查询为两个架构生成两个.csv文件,方法是更改​​table_schemaOUTFILE两次运行以下查询,然后将.csv与Beyond Compare或任何比较进行比较可用工具

select 
t.TABLE_NAME,c.COLUMN_NAME,t.TABLE_TYPE,c.COLUMN_TYPE,t.ENGINE, t.VERSION, t.TABLE_COLLATION, c.ORDINAL_POSITION, c.COLUMN_DEFAULT, c.IS_NULLABLE, c.DATA_TYPE, c.CHARACTER_MAXIMUM_LENGTH, c.NUMERIC_PRECISION, c.CHARACTER_SET_NAME, c.COLLATION_NAME, c.COLUMN_KEY, c.EXTRA, c.PRIVILEGES 
from 
information_schema.columns c, information_schema.tables t where t.table_schema = **‘schema_name1’** and t.table_schema = c.table_schema and t.TABLE_NAME = c.TABLE_NAME order by 1,2 
INTO OUTFILE **'C:/ARUN/temp2/va_empty_db_2_info.csv'** FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n'