2012年7月31日火曜日

mongoDB(mongoHQ)+herokuでバックアップとインポート

mongoHQのプランアップデートの際にバックアップとインポートを使うことになったので、少しまとめる。

mongodumpとmongorestoreを使ったので表現があれかもしれないですが、初心者のあれでだれかつこんでください。

https://devcenter.heroku.com/articles/mongohq

てかmongoHQのプランアップデートはまってたけど。よく読むと最後に Upgrading your Database ってあるし。。

流れとしては、ここの通り。

$ heroku maintenance:on (off)

やるときは、これでdbに変更がないようにmaintenanceモードにしといたほうがいいねってかいてある。んでまず

$heroku config 
MONGOHQ_URL: mongodb:// <username>:<password>@<host>:<port>/<dbname>

 の部分を確認してmongoHQのdbをdumpする

$ mongodump -h hostname.mongohq.com:port_number -d database_name -u username -p password -o /path/on/my/local/computer

dumpしたあと、プランをremoveからaddしてプランを変更して

$ heroku addons:remove mongohq:free
$ heroku addons:add mongohq:small

変わったMONGOHQ_URLを再び確認をして、mongorestoreをする

$ mongorestore -h hostname.mongohq.com:port_number -d database_name -u username -p password /path/on/my/local/computer

これで、アップグレードはできたことになりましたー!

ちなみに、ローカルにあるdbには 

$ mongorestore -d <dbname> /path/on/my/local/computer

とかで、インストールされるー。<dbname>は config/mongoid.yml内のdevelopment: database: <dbname> のとこ。

 参考

http://jp.docs.mongodb.org/manual/reference/mongodump/

http://jp.docs.mongodb.org/manual/reference/mongorestore/

0 件のコメント:

コメントを投稿