質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.52%

  • MongoDB

    245questions

    MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。

MongoDBの/data/dbのエラーについて

解決済

回答 1

投稿

  • 評価
  • クリップ 0
  • VIEW 150
退会済みユーザー

退会済みユーザー

ご覧いただきありがとうございます。
CentOS7にMongoDB3.4をインストールしました。
mongodを起動しようとすると、/data/dbがないから起動できないよというエラーが発生してしまいました。

2018-06-27T19:21:27.087+0900 I STORAGE  [initandlisten] exception in initAndListen: 29 Data directory /data/db not found., terminating


ルートディレクトリにmkdir data/db でディレクトリを作成し、再度試みましたが、上記のエラーが再度発生してしまいました。

困ったなと思い、試しにmongoコマンドを打つと、データベースが起動し、insertなどができ、
mongod.confを確認すると、こちらには

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo


と書かれていました。
ここで頭がこんがらがってしまい、mongodが何かわからなくなってしまいました。
なぜdbPathが双方違うルートを指定していて、mongodは起動しないのに、mongoは起動するのでしょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

0

とりあえず、

mongod -dbpath /var/lib/mongo

で起動できますか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/27 19:49

    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] db version v3.4.15
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] git version: 52e5b5fbaa3a2a5b1a217f5e647b5061817475f9
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] allocator: tcmalloc
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] modules: none
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] build environment:
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] distmod: rhel70
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] distarch: x86_64
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] target_arch: x86_64
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] options: { storage: { dbPath: "/var/lib/mongo" } }
    2018-06-27T19:47:18.174+0900 I STORAGE [initandlisten] exception in initAndListen: 98 Unable to lock file: /var/lib/mongo/mongod.lock Resource temporarily unavailable. Is a mongod instance already running?, terminating
    2018-06-27T19:47:18.174+0900 I NETWORK [initandlisten] shutdown: going to close listening sockets...
    2018-06-27T19:47:18.174+0900 I NETWORK [initandlisten] shutdown: going to flush diaglog...
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] now exiting
    2018-06-27T19:47:18.174+0900 I CONTROL [initandlisten] shutting down with code:100
    上記のエラーが発生しております

    キャンセル

  • 2018/06/27 19:53

    /var/lib/mongo内のmongod.lock(正しく起動、停止をしなかった?)を削除し、mongod -dbpath /var/lib/mongoを再度実行すると
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] db version v3.4.15
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] git version: 52e5b5fbaa3a2a5b1a217f5e647b5061817475f9
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] allocator: tcmalloc
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] modules: none
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] build environment:
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] distmod: rhel70
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] distarch: x86_64
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] target_arch: x86_64
    2018-06-27T19:51:48.589+0900 I CONTROL [initandlisten] options: { storage: { dbPath: "/var/lib/mongo" } }
    2018-06-27T19:51:48.612+0900 E NETWORK [initandlisten] listen(): bind() failed Address already in use for socket: 0.0.0.0:27017
    2018-06-27T19:51:48.612+0900 E NETWORK [initandlisten] addr already in use
    2018-06-27T19:51:48.612+0900 E NETWORK [initandlisten] Failed to set up sockets during startup.
    2018-06-27T19:51:48.612+0900 E STORAGE [initandlisten] Failed to set up listener: InternalError: Failed to set up sockets
    2018-06-27T19:51:48.612+0900 I NETWORK [initandlisten] shutdown: going to close listening sockets...
    2018-06-27T19:51:48.612+0900 I NETWORK [initandlisten] shutdown: going to flush diaglog...
    2018-06-27T19:51:48.612+0900 I CONTROL [initandlisten] now exiting
    2018-06-27T19:51:48.612+0900 I CONTROL [initandlisten] shutting down with code:48
    となりました

    キャンセル

  • 2018/06/27 20:00

    良かったですね。

    キャンセル

  • 2018/06/27 20:06 編集

    Orlofsky様、どうもありがとうございました。
    起動しているとのことだったので、一度停止させ、再度mongod -dbpath /var/lib/mongoすると
    ズラーっと色々表示した後に、2018-06-27T20:00:33.511+0900 I NETWORK [thread1] waiting for connections on port 27017と無事表示されました。

    今更ですが、mongoとmongodコマンドの違いなのですが、mongoコマンドはデータベースを直接触る際に、mongodコマンドはmongoを起動する際に使用するみたいな認識でよろしいでしょうか?
    mongod -dbpath /var/lib/mongo はmongo起動させて、データの置き場はここにしてくださいといったような感じなのでしょうか?

    キャンセル

  • 2018/06/27 20:34

    mongodコマンドしか知りません。dbpath は文字通りデータベースの置いてあるパスですね。MongoDB ってまだまだ日本語の情報が少ないです。

    キャンセル

  • 2018/06/27 20:56

    ありがとうございます。
    公式のリファレンスも読みながらしてはいるのですが、なかなかすんなりと行かない印象です。
    助かりました。ありがとうございました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.52%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 受付中

    [mongoDB]文字列一括置換

    mongoDB内全データの特定フィールドに格納されている文字列の末尾に、特定の文字列を追加したいのですが、どのようにすればよいでしょうか。 よろしくお願いします。

  • 受付中

    pymongoのfind()メソッドについて

    pymongoのfind()でデータを取得するとinsertしたfieldの順番が変わってしまいますが、insertした順番でデータを取得する方法が知りたい… 例) 1.O

  • 解決済

    Centos6.6 mongo-expressが動きません

    最近LAMP環境から MEAN stackに変えたんですが mongo dbがよくわからなくて GUIツールのmongo-expressを導入しましたが エラー?がでて使え

  • 解決済

    service mongod --dbpath /[PATH]/ で起動できない

    MongoDBについて質問です。 起動するとき、dbpathを指定したうえで起動しっぱなしにしてやりたいのですが、 service mongod --dbpath /[PA

  • 解決済

    MongoDBのエラー ERR TypeError: Cannot read property 'c...

    mongodbをローカルやクラウド上にディプロイする際に時たまエラーが起こり、ログにでてくるのが以下のものなのですが、MongoDBが下記のようなエラーを吐き出しやすい理由などある

  • 解決済

    mongooseでupdateしたい

    前提・実現したいこと 現在Nodejsからmongooseを使ってmongodb に対して,データの追加を行っています. 今回特定のidに対してデータの更新を行おうと考えまし

  • 解決済

    mongoDBでcountしたい

    mongodb version v3.6.1 こういうしょうもない設計のレコードが50万件くらいあります。 { "_id" : ObjectId("5a51d36b

  • 解決済

    Webアプリケーション(投稿フォーム)を作成するために、MongoDBからデータを取得したいのですが...

     前提・実現したいこと Webアプリケーション(投稿フォーム)を作成するために、MongoDBからデータを取得したいのですが、できません ※使用OS:MacOS  発生して

同じタグがついた質問を見る

  • MongoDB

    245questions

    MongoDBはオープンソースのドキュメント指向データベースの1つです。高性能で、多くのリトルエンディアンシステムを利用することができます。