我想编写一组小 shell 脚本来帮助我在 git 中保存 MySQL 模式。但一个症结在于,mysqldump -uuser -ppass -d devdb > schema.sql
包含两件事,即使没有架构更改,也会随着时间的推移而发生变化:
AUTO_INCRMENT=[some number]
位于任何具有自动递增列的表的定义末尾-- 转储于最后的 [日期和时间]
完成
我在网上搜索了没有这些东西的转储的方法,但没有成功。你能提供建议吗?或者我应该使用不同的命令或工具来获取用于版本控制的干净架构?
编辑:我刚刚找到了 --skip-dump-date
选项,这样就解决了第 2 点,但我仍然无法在不丢失自动递增数字的情况下摆脱自动递增数字其他表属性(或任何您所说的东西),例如引擎和默认字符集。
最佳答案
没有办法绕过#1,检查https://bugs.mysql.com/bug.php?id=20786 .
如评论部分所述,您可以使用 sed 命令将其过滤掉(除非您有一些使用它的 CREATE TABLE 语句)。
关于mysql - 清理 mysqldump 以跟踪 git 中的架构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41082194/