我正在尝试使用mysqldump导出我的数据库,并且sql文件应该满足以下条件
未来不同表格的条件可能会增加。
此转储文件将在本地环境中使用,并将作为生产数据库的替代品。
有没有办法在文件中写下所有这些条件?
答案 0 :(得分:1)
mysqldump
就是你想要的:
http://dev.mysql.com/doc/refman/5.7/en/mysqldump.html
mysqldump --single-transaction --host=localhost --user=MyUser --password=MyPassword MyDatabase MyTable --where="mydatefield > 'insert-10 day old date here'"
mysqldump --single-transaction --host=localhost --user=MyUser --password=MyPassword --ignore-table=MyDatabase.MyTable --ignore-tableMyDatabase.MySecondIgnoredTable
可以通过更改“插入日期10天”来改善此答案。带有反引号bash命令的占位符,该命令是有条件的 - 10天。
在命令行上指定密码可能存在安全风险,因此不鼓励使用,尤其是在脚本或共享托管环境中。检查上面的帮助文件,以查看创建要在命令中使用的凭证文件的更复杂过程。
如果你有MyISAM表而不是InnoDB,你想要用--skip-add-locks切换--single-transaction
我意识到这个问题来自一年前,但有人可能仍然觉得有用。