多年来,我一直使用ssh管道从实时服务器上的mysqldump到我的开发机器上的mysql,以获取当前数据的副本。
ssh -C <server> mysqldump --opt <live_database_name> |mysql <local_dev_database_name>其中-C支持ssh压缩,--opt支持快速和完整。
有没有人有类似于rails的rake任务?理想情况下,它将从config/database.yml中获取数据库名称
发布于 2010-12-22 00:21:33
https://gist.github.com/750129
这不是一个优雅的解决方案。它基本上是旧方法的包装器,因此它甚至与其他数据库驱动程序不兼容。
但是你可以把它放到你的SCM的lib/task下,以便与你团队中的其他开发人员分享。它还使用现有config/database.yml文件中的配置数据。您可以通过向该文件添加另一个分支来定义活动数据库,并且它使用与Rails相同的键名。
也许重用生产数据库配置甚至是有意义的。
发布于 2010-12-20 18:25:10
下面是我用于Postgres数据库的一个:https://gist.github.com/748222。
有三个任务:db:download、db:replace和db:restore。db:restore只是另外两个的包装器。
我要说的是,你也可以很快地为Mysql做类似的事情。在这种情况下,我只使用最新的备份,而不是在运行时创建它。
发布于 2010-11-25 20:33:54
如果你对用Ruby语言编码没什么问题,你可能会想看看seed-fu和activerecord-import。
哦,我忘了提standalone-migrations了。它附带了一个用于模式迁移的Rake任务。
祝好运!
https://stackoverflow.com/questions/4277061
复制相似问题