Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Migrieren einiger Objekte von einer Datenbank in eine andere

OK.

God Save the YAML

Ich habe YAML-Dumping in eine Datei aus der Entwicklung verwendet und diese in meine Produktion geladen. Es gab einen Hack mit einer ID, die sich geändert hat, da sie auto_increment ist.

Entwicklung

user     = User.find X
posts    = user.posts
comments = user.comments
...
File.open("user.yml", "w")    { |f| f << YAML::dump(user) }
File.open("comments.yml", "w"){ |f| f << YAML::dump(comments) }
File.open("posts.yml", "w")   { |f| f << YAML::dump(posts) }
...

Produktion

user     = YAML::load_file("user.yml")
posts    = YAML::load_file("posts.yml")
comments = YAML::load_file("comments.yml")
new_user = user.clone.save # we should clone our object, because it isn't exist
posts.each do |p|
  post = p.clone
  post.user = new_user
  post.save
end
...