2011-02-03 3 views
28

ここでは単純なものがありませんが、mongoをデーモン(mongod - forkまたはmongodを使用)として実行すると、私は単にホストマシン上で "mongo"を実行するよりも、異なるデータベースの内容を参照してください。Mongodb - 実行中の "mongo"と "mongod"データベースの違い

唯一の仮定は、データがシェルだけで実行されているときに/ data/db以外の場所に格納されていて、mongodを起動するときに/ data/dbに切り替えるということです。その場合、mongodの実行時に私のデータをどのように取得するのですか?

+0

ないあなたがここに求めているのかわから(dbnameは、データベースの名前です)、以下でmongoを起動してみたが、mongodは、データベース・サーバとモンゴがクライアントです。 「異なるデータベースのコンテンツが表示されます」という意味はどうですか? – mikezter

答えて

62

私はここにいくつかの混乱があると思います。

mongodは "Mongo Daemon"です。これは基本的にデータベースのホストプロセスです。 mongodを起動すると、基本的にはが「MongoDBプロセスを起動し、バックグラウンドで実行する」と言います。mongodは、/data/dbにデータを格納し、ポート27017.

mongo上で実行されているようないくつかのデフォルトパラメータを有するmongodの特定のインスタンスに接続し、コマンドラインシェルです。パラメータを指定しないでmongoを実行すると、デフォルトでポート27017のlocalhostに接続することになります。無効なマシン:ポートの組み合わせに対してmongoを実行すると、接続に失敗します(その旨を通知します)。

理想的には、「再生」以外の操作を行う場合は、mongodにはCommand Line Parametersを使用します。同じ方法で明示的に指示してmongoシェルを起動する必要があります。

説明に基づいて、デフォルトデータベースの使用に関する問題が発生している可能性があります。

./mongo localhost:27017/dbname 
関連する問題