かざいむ日誌

IT関係で知ったことなどを記事としてあげていきます。内容に不備や質問などあればぜひコメントをよせてください。

OpenShift 上のMongoDBにデータをインポートする

OpenShiftのチュートリアルに従ってJSONデータをMongoDBにインポートしてみた。ただ、いつものようにいくつか引っかかったのでメモ。

1.JSONファイルを用意
2.FileZilaを使ってデータをサーバーにアップロード
3.PuTTYを使ってmongoimportでファイルをインポート

 

1.JSONファイルを用意
OpenShiftのサイトのチュートリアルのファイルをそのまま使う。

2.FileZilaを使ってデータをサーバーにアップロード
Windowsマシンなので、チュートリアルにあるようにscpコマンドをそのまま使えなかったため、ツールをインストールした。最初WinSCPを使って接続したのだが、接続エラーでうまくいかなかったため、OpenShiftブログの記事に従って、FileZilaを使って接続した。
ファイルを置く場所はapp-root/data/配下。

f:id:name_untitled:20160605153651p:plain

3.PuTTYを使ってmongoimportでファイルをインポート

mongoimport -d nodejs -c parkpoints --type json --file app-root/data/parkcoord.json -h $OPENSHIFT_MONGODB_DB_HOST -u admin -p $OPENSHIFT_MONGODB_DB_PASSWORD

Error: multiple_occurences

で、失敗して終わる。

→凡ミス。全角スペースが入ってた、、、。

下記で成功。

mongoimport -d nodejs -c parkpoints --type json --file app-root/data/parkcoord.json -h $OPENSHIFT_MONGODB_DB_HOST -u admin -p $OPENSHIFT_MONGODB_DB_PASSWORD

f:id:name_untitled:20160605165401p:plain

 

 

以下、メモ。

WindowsだとSCPコマンド使えないからツールが要る

WindSCP使ったらうまくいかなかったため、FileZilaでファイルを追加
→追加する場所が間違えてたと後から分かる
mongoimportを実行
mongoimport openshift couldn't connect to server 127.0.0.1f:id:name_untitled:20160605152953p:plain

パラメータの指定に誤りがあると、MongoDBにそもそもつなげなくて上記のエラーが出るらしい。上記の場合は、ファイルを置いたパスと、コレクション名に誤りがあった。