使用MongoDB

使用MongoDB,mongodb,ubuntu,root,Mongodb,Ubuntu,Root,我刚刚熟悉MongoDB,这是我第一次使用它。我正在使用Ubuntu环境进行开发。我按照MongoDB网站上提供的教程中提到的说明安装了MongoDB。他们说数据将存储在/data/db中,现在我有两个问题 1) 我需要在哪里制作此文件夹?是指哪个目录? 2) 我在根目录/中创建了一个目录,然后运行mongo服务器。我用使用movies命令创建了一个名为movies的数据库,然后在其中放入一些集合,如动作和喜剧,然后每个集合我都用db.action.insert和db.comic.insert命

我刚刚熟悉MongoDB,这是我第一次使用它。我正在使用Ubuntu环境进行开发。我按照MongoDB网站上提供的教程中提到的说明安装了MongoDB。他们说数据将存储在/data/db中,现在我有两个问题

1) 我需要在哪里制作此文件夹?是指哪个目录? 2) 我在根目录
/
中创建了一个目录,然后运行
mongo
服务器。我用
使用movies
命令创建了一个名为
movies
的数据库,然后在其中放入一些集合,如
动作和喜剧
,然后每个集合我都用
db.action.insert
db.comic.insert
命令保存了一些文档,当我试图在/data/db文件夹中找到它时,我找到了它三个文件和一个文件夹,但没有电影名称的文件,所以我的问题是我的数据库保存的名称

请在这方面指导我


感谢

默认情况下,Mongo将其所有DB文件存储在已配置的
dbdir
目录的根目录中。如果希望Mongo为每个数据库创建单独的目录并将数据库文件放在其中,请查看
directoryperdb
configuration选项

默认数据目录
/data/db
如果尚未创建,则需要由您创建。 您可以通过shell在Ubuntu中执行此操作:

CTL+ALT+T
打开终端窗口:

cd /
sudo mkdir /data
cd data
sudo mkdir db
注意:您可能还需要更改您拥有的新目录的所有权:

sudo chown your_user_name /data
注意:我的Mongo安装默认为dbdir
/var/lib/mongodb

您也可以在启动Mongo时选择其他数据目录:

mongod --dbdir some/dir
如果Mongo是作为服务安装的,您应该检查mongodb.conf文件中的dbdir配置选项(同样,当我安装Mongo时,我相信我是通过软件中心安装的,它将mongodb.conf放置在
/etc/mongodb.conf


希望这有帮助

您看到的3个文件是什么?测试*

以下是两种更可能的情况

  • a) 您的数据库文件被放入另一个位置
  • b) 您的数据在测试数据库中
返回您的shell并运行:

use local
db.startup_log.find({},{startTimeLocal:1,cmdLine:1}).sort({$natural:-1}).limit(1).pretty()

{
    "_id" : "mycomputer",
    "startTimeLocal" : "Mon Oct  7 09:44:25.353",
    "cmdLine" : {
        "config" : "mongodb.conf",
        "dbpath" : "./db",
        "fork" : "1",
        "journal" : "1",
        "logpath" : "./logs/mongo.log",
        "port" : 27017,
        "rest" : "1"
    }
}
=>dbpath告诉您命令行或配置文件上提供的位置

再次在shell中运行以下命令:

use test
show collections
use movies
show collections

如果您看到您的收藏名称正在测试中,您可能在创建数据之前没有使用过“使用电影”。

亲爱的先生,我检查了
data/db
目录,它存在于那里,但其中没有我创建的名为
movies
…的数据库。我猜您的配置(mongodb.config)指向--dbdir的不同位置,因此数据库存储在该不同位置。您可以检查/var/lib/mongodb目录是否存在-您的数据库可能是Therrirabelle…感谢您的详细回复..我得到了相应的目录…还有一个小问题..您对使用C/C++驱动程序的GridFS有什么想法吗?很抱歉回复太晚-不,我对这些一无所知-我是个业余爱好者;-)