在 Linux 上安装 MongoDB

有一段时间以前,我写了一篇关于如何在Mac OS X上安装MongoDB的文章(/community/tutorials/install-mongodb-mac)。

在 Linux 上安装 MongoDB

install mongodb on linux Current version of MongoDB is 3.4.7 and I will be installing 64-bit version through command line. The steps to install MongoDB on Linux are very simple, just follow the below terminal commands to download and install it.

  1. 下载并提取 MongoDB 二进制
 1root@dev [/home/journal]# mkdir mongodb
 2root@dev [/home/journal]# cd mongodb/
 3root@dev [/home/journal/mongodb]# curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.7.tgz
 4  % Total    % Received % Xferd Average Speed Time Time Time Current
 5                                 Dload Upload Total Spent Left Speed
 6100 82.7M 100 82.7M 0 0 1704k 0 0:00:49 0:00:49 --:--:-- 1334k
 7root@dev [/home/journal/mongodb]# tar xvf mongodb-linux-x86_64-3.4.7.tgz
 8 mongodb-linux-x86_64-3.4.7/README
 9 mongodb-linux-x86_64-3.4.7/THIRD-PARTY-NOTICES
10 mongodb-linux-x86_64-3.4.7/MPL-2
11 mongodb-linux-x86_64-3.4.7/GNU-AGPL-3.0
12 mongodb-linux-x86_64-3.4.7/bin/mongodump
13 mongodb-linux-x86_64-3.4.7/bin/mongorestore
14 mongodb-linux-x86_64-3.4.7/bin/mongoexport
15 mongodb-linux-x86_64-3.4.7/bin/mongoimport
16 mongodb-linux-x86_64-3.4.7/bin/mongostat
17 mongodb-linux-x86_64-3.4.7/bin/mongotop
18 mongodb-linux-x86_64-3.4.7/bin/bsondump
19 mongodb-linux-x86_64-3.4.7/bin/mongofiles
20 mongodb-linux-x86_64-3.4.7/bin/mongooplog
21 mongodb-linux-x86_64-3.4.7/bin/mongoreplay
22 mongodb-linux-x86_64-3.4.7/bin/mongoperf
23 mongodb-linux-x86_64-3.4.7/bin/mongod
24 mongodb-linux-x86_64-3.4.7/bin/mongos
25 mongodb-linux-x86_64-3.4.7/bin/mongo

将 MongoDB bin 目录添加到 PATH 变量

1root@dev [/home/journal/mongodb]# mv mongodb-linux-x86_64-3.4.7 mongodb
2root@dev [/home/journal/mongodb]# cd mongodb
3root@dev [/home/journal/mongodb/mongodb]# echo $PATH
4/usr/local/jdk/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin:/root/bin
5root@dev [/home/journal/mongodb/mongodb]# export PATH=$PATH:/home/journal/mongodb/mongodb/bin

创建 MongoDB 文件目录并启动它

 1root@dev [/home/journal/mongodb/mongodb]# mkdir data
 2root@dev [/home/journal/mongodb/mongodb]# cd bin
 3root@dev [/home/journal/mongodb/mongodb/bin]# ./mongod --dbpath /home/journal/mongodb/mongodb/data &
 4[1] 30387
 5root@dev [/home/journal/mongodb/mongodb/bin]# 2014-08-04T13:56:05.916+0000 [initandlisten] MongoDB starting : pid=30387 port=27017 dbpath=/home/journal/mongodb/mongodb/data 64-bit host=dev.journaldev.com
 62014-08-04T13:56:05.917+0000 [initandlisten] db version v3.4.7
 72014-08-04T13:56:05.917+0000 [initandlisten] git version: 255f67a66f9603c59380b2a389e386910bbb52cb
 82014-08-04T13:56:05.917+0000 [initandlisten] build info: Linux build12.nj1.10gen.cc 2.6.32-431.3.1.el6.x86_64 #1 SMP Fri Jan 3 21:39:27 UTC 2014 x86_64 BOOST_LIB_VERSION=1_49
 92014-08-04T13:56:05.917+0000 [initandlisten] allocator: tcmalloc
102014-08-04T13:56:05.917+0000 [initandlisten] options: { storage: { dbPath: "/home/journal/mongodb/mongodb/data" } }
112014-08-04T13:56:05.922+0000 [initandlisten] journal dir=/home/journal/mongodb/mongodb/data/journal
122014-08-04T13:56:05.922+0000 [initandlisten] recover : no journal files present, no recovery needed
132014-08-04T13:56:06.064+0000 [FileAllocator] allocating new datafile /home/journal/mongodb/mongodb/data/local.ns, filling with zeroes...
142014-08-04T13:56:06.064+0000 [FileAllocator] creating directory /home/journal/mongodb/mongodb/data/_tmp
152014-08-04T13:56:06.067+0000 [FileAllocator] done allocating datafile /home/journal/mongodb/mongodb/data/local.ns, size: 16MB, took 0.001 secs
162014-08-04T13:56:06.069+0000 [FileAllocator] allocating new datafile /home/journal/mongodb/mongodb/data/local.0, filling with zeroes...
172014-08-04T13:56:06.070+0000 [FileAllocator] done allocating datafile /home/journal/mongodb/mongodb/data/local.0, size: 64MB, took 0.001 secs
182014-08-04T13:56:06.071+0000 [initandlisten] build index on: local.startup_log properties: { v: 1, key: { _id: 1 }, name: "_id_", ns: "local.startup_log" }
192014-08-04T13:56:06.071+0000 [initandlisten] 	 added index to empty collection
202014-08-04T13:56:06.071+0000 [initandlisten] waiting for connections on port 27017

使用ps命令确认 MongoDB 正在运行

1root@dev [/home/journal/mongodb/mongodb/bin]#
2root@dev [/home/journal/mongodb/mongodb/bin]# ps -eaf | grep mongo
3root 7199 28009 0 14:09 pts/0 00:00:00 grep mongo
4root 30387 28009 0 13:56 pts/0 00:00:02 ./mongod --dbpath /home/journal/mongodb/mongodb/data
5root@dev [/home/journal/mongodb/mongodb/bin]#

就是这样,我们的 MongoDB 安装在 linux 机器上,运行良好,但是,您可能希望通过您的用户配置文件(即.bash_profile 或.profile)导出 PATH,这样一旦您离开终端,它就不会消失。

执行 MongoDB 命令

现在,让我们连接到MongoDB并运行一些mongodb命令,以确保它正常运行。

 1root@dev [~]# cd /home/journal/mongodb/mongodb/bin/
 2root@dev [/home/journal/mongodb/mongodb/bin]# ./mongo
 3MongoDB shell version: 3.4.7
 4connecting to: test
 5> show dbs
 6admin  (empty)
 7local 0.078GB
 8> use journaldev
 9switched to db journaldev
10> db.names.save({"id":123,"name":"Pankaj"})
11WriteResult({ "nInserted" : 1 })
12> db.names.find()
13{ "_id" : ObjectId("53df918adbef24e88560fa5b"), "id" : 123, "name" : "Pankaj" }
14> db.datas.save({})
15WriteResult({ "nInserted" : 1 })
16> show collections
17datas
18names
19system.indexes
20> show dbs
21admin       (empty)
22journaldev 0.078GB
23local 0.078GB
24> exit
25bye
26root@dev [/home/journal/mongodb/mongodb/bin]#

正如你所看到的,一切似乎都很顺利,我可以从MongoDB数据库中保存和检索数据. 如果你离开了MongoDB开始的终端,它将被停止。 使用nohup命令来启动它,以便即使在你关闭终端后也不会停止。

Published At
Categories with 技术
Tagged with
comments powered by Disqus