首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用mysqldump选择性地转储数据

问用mysqldump选择性地转储数据
EN

Stack Overflow用户
提问于 2015-10-08 12:44:00
回答 1查看 647关注 0票数 1

我正在尝试使用mysqldump导出我的数据库,并且sql文件应该满足以下条件

  1. 该文件不应包含来自table_x的数据(保持结构)
  2. 从table_y删除/跳过10天以上的数据(保留结构)

对于不同的表,今后的情况可能会有所增加。

此转储文件将在本地环境中使用,并将作为生产数据库的替代。

是否有办法在文件中写入所有这些条件?

EN

回答 1

Stack Overflow用户

发布于 2016-05-20 04:13:43

mysqldump是你想要的:http://dev.mysql.com/doc/refman/5.7/en/mysqldump.html

代码语言:javascript
复制
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命令,即curdate -10天。

在命令行中指定密码可能是一种安全风险,并且是不鼓励的,特别是在脚本或共享宿主环境中。检查上面的帮助文件,查看创建要在命令中使用的凭据文件的更复杂过程。

如果您有MyISAM表而不是InnoDB,则需要切换--单事务--与--跳过加锁。

我意识到这是一年前的问题,但可能有人仍然会发现有用的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33016198

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档