前几天我自己装了一下,就是根据这个文档来的,很好安装,前提是对linux 命令比较熟悉。如果不熟悉的话,跟着这个文档一步一步的做,也没问题。
Linux平台安装MongoDB
MongoDB 提供了 linux 各发行版本 64 位的安装包,你可以在官网下载安装包。
下载地址:https://www.mongodb.com/download-center#community
下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz # 下载 tar -zxvf mongodb-linux-x86_64-3.0.6.tgz # 解压 mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb # 将解压包拷贝到指定目录
MongoDB 的可执行文件位于 bin 目录下,所以可以将其添加到 PATH 路径中:
export PATH=<mongodb-install-directory>/bin:$PATH
<mongodb-install-directory> 为你 MongoDB 的安装路径。如本文的 /usr/local/mongodb 。
创建数据库目录
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。
以下实例中我们将data目录创建于根目录下(/)。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。
mkdir -p /data/db
注意这个是根目录下。
命令行中运行 MongoDB 服务
你可以再命令行中执行mongo安装目录中的bin目录执行mongod命令来启动mongdb服务。
注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。
$ ./mongod 2015-09-25T16:39:50.549+0800 I JOURNAL [initandlisten] journal dir=/data/db/journal 2015-09-25T16:39:50.550+0800 I JOURNAL [initandlisten] recover : no journal files present, no recovery needed 2015-09-25T16:39:50.869+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.16 2015-09-25T16:39:51.206+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 3.52 2015-09-25T16:39:52.775+0800 I JOURNAL [initandlisten] preallocateIsFaster=true 7.7
MongoDB后台管理 Shell
如果你需要进入MongoDB后台管理,你需要先打开mongodb装目录的下的bin目录,然后执行mongo命令文件。
MongoDB Shell是MongoDB自带的交互式Javascript shell,用来对MongoDB进行操作和管理的交互式环境。
当你进入mongoDB后台后,它默认会链接到 test 文档(数据库):
$ cd /usr/local/mongodb/bin $ ./mongo MongoDB shell version: 3.0.6 connecting to: test Welcome to the MongoDB shell. ……
由于它是一个JavaScript shell,您可以运行一些简单的算术运算:
> 2+2 4 > 3+6 9
现在让我们插入一些简单的数据,并对插入的数据进行检索:
> db.runoob.insert({x:10}) WriteResult({ "nInserted" : 1 }) > db.runoob.find() { "_id" : ObjectId("5604ff74a274a611b0c990aa"), "x" : 10 } >
第一个命令将数字 10 插入到 runoob 集合的 x 字段中。
MongoDb web 用户界面
MongoDB 提供了简单的 HTTP 用户界面。 如果你想启用该功能,需要在启动的时候指定参数 --rest 。
注意:该功能只适用于 MongoDB 3.2 及之前的早期版本。
$ ./mongod --dbpath=/data/db --rest
MongoDB 的 Web 界面访问端口比服务的端口多1000。
如果你的MongoDB运行端口使用默认的27017,你可以在端口号为28017访问web用户界面,即地址为:http://localhost:28017。
# # 补充内容
以上内容是最简单的安装 MongoDB 的案例。但是一般我们使用 都要指定配置文件,并将日志打印在指定的目录下,以及将数据放在指定的目录下
新建几个目录,分别用来存储数据和日志、配置
mkdir -p /usr/local/mongodb/data mkdir -p /usr/local/mongodb/log mkdir -p /usr/local/mongodb/conf
新建并修改配置文件
vim /usr/local/mongodb/conf/mongod.conf
内容如下:
systemLog: #MongoDB发送所有日志输出的目标指定为文件 destination: file path: "/usr/local/mongodb/log/mongod.log" logAppend: true storage: #mongod实例存储其数据的目录 dbPath: "/usr/local/mongodb/data" journal: #启用或禁用持久性日志以确保数据文件保持有效和可恢复。 enabled: true processManagement: #启用在后台运行mongos或mongod进程的守护进程模式。 fork: true net: #服务实例绑定的IP,默认是localhost bindIp: 0.0.0.0 port: 27017
启动MongoDB服务(目录相关的内容替换成自己即可,版本不同,可能名字不相同)
/usr/local/mongodb/mongodb-linux-x86_64-4.0.10/bin/mongod -f /usr/local/mongodb/conf/mongod.conf
如果启动后不是 successfully ,则是启动失败了。原因基本上就是配置文件有问题
关闭服务
通过mongo客户端中的shutdownServer命令来关闭服务
//客户端登录服务,注意,这里通过localhost登录,如果需要远程登录,必须先登录认证才行。 mongo --port 27017 //#切换到admin库 use admin //关闭服务 db.shutdownServer()
数据修复
果一旦是因为数据损坏,则需要进行如下操作
删除lock文件
rm -f /usr/local/mongodb/data/*.lock
修复数据
/usr/local/mongdb/bin/mongod --repair --dbpath=/usr/local/mongodb/data