通常,当我备份数据库时,我会运行这样的命令:
mysqldump -uuser -p -hhost -Ddatabase > C:\TEMP\db_2018-04-05.sql
在该文件中,有
DROP table
语句。这通常没问题,但我修改了我的本地主机,使其具有与生产数据库不同的架构。
如果我执行这个文件,它会吹走我本地主机上数据库模式的重要更改。
我只需要
INSERT
语句。有什么标志我可以通过mysqldump
来实现这个目标吗?
包含 mysqldump 忽略结构的命令。
mysqldump --no-create-info ...
所有你需要的是在使用
--skip-add-drop-table
时添加mysqldump
选项。
$ mysqldump -uuser -p -hhost -Ddatabase --skip-add-drop-table > C:\TEMP\db_2018-04-05.sql
如果 SQL 文件中存在,现在没有 DROP TABLE。
上查看mysql的文档。只转储表数据,如只转储mysqldump的数据,没有任何表信息?执行以下操作:
mysqldump --no-create-info ...
你也可以使用:
--skip-triggers
:如果您使用触发器
--no-create-db
:如果您使用--databases ...
选项
--compact:
如果你想摆脱多余的评论