我使用以下命令输出MySQL数据库的模式:
mysqldump --no-data --skip-add-drop-table
我将为我想要比较的两个数据库执行此操作,然后对两个输出文件进行区分.这是我在环境之间跟踪数据库更改的粗略方式.
但是,给我带来一点小小的不便是每个表的行计数作为表定义的一部分包含在内,作为AUTO_INCREMENT值,如下所示:
ENGINE=MyISAM AUTO_INCREMENT=844 DEFAULT CHARSET=latin1;
我认为'--no-data'标志会禁止有关引用数据的表的任何信息,包括行数.
如何在此输出中抑制AUTO_INCREMENT = N?
看看ticket
这个问题.它被关闭为"不会修复"
你可以这样做,或者:
mysqldump --no-data --skip-add-drop-table my_database | sed 's/AUTO_INCREMENT=[0-9]*\b//' > database.dump