2015-08-22 42 views
1

我在自己的Mac中安装了mongodb。然后我尝试通过mongodb启动它。失败。然后我通过mongod --dbpath /data/db开始。然后它永远在等待。如何启动mongodb?Mongodb如何连接和导入数据

2015-08-22T16:08:52.619+0100 I CONTROL [initandlisten] build info: Darwin mimac 14.4.0 Darwin Kernel Version 14.4.0: Thu May 28 11:35:04 PDT 2015; root:xnu-2782.30.5~1/RELEASE_X86_64 x86_64 BOOST_LIB_VERSION=1_49 

2015-08-22T16:08:52.619+0100 I CONTROL [initandlisten] allocator: system 

2015-08-22T16:08:52.619+0100 I CONTROL [initandlisten] options: { storage: { dbPath: "/data/db/" } } 

2015-08-22T16:08:52.628+0100 I NETWORK [initandlisten] waiting for connections on port 27017 

回答

1

开始mongodb自动您可以使用命令:

ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents 
launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist; 
+0

按照你说的做完之后。 mongod正在运行。就像我发出mongod一样,我得到的错误如下:I在initAndListen中存储[initandlisten]异常:98无法创建/打开锁定文件:/data/db/mongod.lock errno:13 Permission denied是否一个mongod实例已经在运行?终止。现在问题是如何通过使用mongoimport导入数据?我试过这个命令mongoimport --host localhost --db test --collection bank_data --type json --file bank_data.json。然后将错误视为失败:连接到数据库服务器的错误:无法访问服务器。我认为存在默认测试数据库。 – masiboo

+0

检查您的用户是否有权将日志文件写入'/ var/log/mongodb /'目录(运行:'mkdir/var/log/mongodb /; chown -R :staff/var/log/mongodb' )。然后杀死所有的mongod进程:'sudo killall mongod'并重新启动'mongodb':'launchctl unload -w〜/ Library/LaunchAgents/homebrew.mxcl.mongodb.plist; launchctl加载-w〜/ Library/LaunchAgents/homebrew.mxcl.mongodb.plist;' –

1
  1. 的mongod是守护程序(即MongoDB服务器本身)。你应该像你一样运行它。
  2. 后有正在运行的服务器,您可以:

    • 运行蒙戈外壳,与蒙戈命令。这会给你一个你有数据库的接口,比如查询和插入数据。
    • 要将外部文件导入到mongo数据库中,您应该使用命令行工具mongoimport,它提供了mongodb。

    mongoimport -d数据库名称-c集合名称< filename.json

mongoimport可以导入JSON,CSV和TSV文件。