一、安装
- 方法一:去MongoDB官网找安装包的地址
下载完安装包,并解压 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=/usr/local/mongodb/bin:$PATH
注:如果这一步报错: xxx:not a valid identifier,就是=号后面有空格,去掉即可
- 方法二:使用wget方法下载
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.6.5.tgz
二、创建数据库目录
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。
以下实例中我们将data目录创建于根目录下(/)。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(--dbpath)。
mkdir -p /data/db
三、启动MongoDB
在启动之前先在bin目录下创建mongodb.conf
vim /usr/local/mongodb/bin/mongodb.conf
iptables -A OUTPUT -p tcp --sport 27017 -j ACCEPT // 开放27017端口
然后输入(作用是允许远程连接,bind_ip由127.0.0.1改为了0.0.0.0)
bind_ip = 0.0.0.0 port = 27017 auth=false
#设置成后台启动 fork=true #后台启动需要配置日志输出 logpath=/usr/local/mongodb-linux-x86_64-rhel70-3.6.5/log/mongo.log
cd /usr/local/mongodb/bin ./mongod -config ./mongodb.conf // 这个启动命令,指定配置文件
MongoDB后台管理 Shell
./mongo
关闭MongoDB
$ ps aux | grep mongod
$ kill -2 1256
注意是-2,不是-9,如果使用9会造成数据库异常关闭,丢失数据
进入后shell页面后,添加用户(为了远程连接用)
查看数据库版本:
[root@aliyun ~]# mongo
MongoDB shell version v3.4.7
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.7
> use admin
switched to db admin
> db.system.version.find()
{ "_id" : "featureCompatibilityVersion", "version" : "3.4" }
{ "_id" : "authSchema", "currentVersion" : 5 }
如果是如上结果,因为数据库版本不一致,远程连接时会出现Authorization failed错误。
解决方法:
> db.system.version.update({"_id":"authSchema"},{$set:{"currentVersion":3}})
如果是如下结果,则添加一条记录:
[root@aliyun ~]# mongo
MongoDB shell version v3.4.7
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.7
> use admin
switched to db admin
> db.system.version.find()
{ "_id" : "featureCompatibilityVersion", "version" : "3.4" }
> db.system.version.insert({"_id":"authSchema","currentVersion":3})
WriteResult({ "nInserted" : 1 })
> db.system.version.find()
{ "_id" : "featureCompatibilityVersion", "version" : "3.4" }
{ "_id" : "authSchema", "currentVersion" : 3 }
添加用户:
> db.createUser({user:"admin",pwd:"123456",roles:[{"role":"userAdminAnyDatabase","db":"admin"}]})
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "userAdminAnyDatabase",
"db" : "admin"
}
]
}
注:上面的命令只是创建了一个 userAdminAnyDatabase 角色,用来管理用户,可以通过这个角色来创建、删除用户。该角色在客户端上可以操作所有已创建的数据库,但不能创建数据库。数据库创建操作要在服务器上做。
注:密码要改为强度高一点密码,不然很容易被攻击。
- 创建库的命令
use test
db.test.insert({"a":"1"})
// 只要往库里插一条数据即可创建库
四、安装客户端
下载RoboMongo
转载自菜鸟教程:http://www.runoob.com/mongodb/mongodb-linux-install.html