使用rake转储和加载数据库

Vik*_*rón 6 rake rake-task ruby-on-rails-3

如何指定将我的数据库转储/加载到yaml的目录?

rake db:data:dump_dir
Run Code Online (Sandbox Code Playgroud)

创建

db/2011-08-31_14:10:57_+0100/
Run Code Online (Sandbox Code Playgroud)

rake db:data:load_dir

No such file or directory - <RAILS_ROOT>/db/base
Run Code Online (Sandbox Code Playgroud)

我的问题是你是否可以指定转储到/加载的目录名称以及如何?

谢谢

Ben*_*ret 11

您可以使用'dir'参数,例如:

rake db:data:dump_dir dir="my_dir"
Run Code Online (Sandbox Code Playgroud)

这将把它放在'db/my_dir'中并且:

rake db:data:load_dir dir='my_dir'
Run Code Online (Sandbox Code Playgroud)

这将从'db/my_dir'加载它.

对于转储,目录不得存在.在两种情况下,dirs都与db相关,不允许使用绝对路径

希望这可以帮助.

  • 嗨,这对我有用,但要使这些命令正常工作,你需要安装yaml_db gem(https://github.com/ludicast/yaml_db),至少对于rails 2.3.9.谢谢 (3认同)