*MongoDB使用版本为3.0.6
一. 下载及安装
1. 下载
curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz
2. 解压
tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
3. 将解压包拷贝到指定目录
mv mongodb-linux-x86_64-3.0.6/ /usr/local/mongodb
4.配置环境变量
为你 MongoDB 的安装路径。如我的路径是 /usr/local/mongodb 。
vim /etc/profile
export PATH=/bin:$PATH
source /etc/profile
5.创建数据库目录
MongoDB的数据存储在data目录的db目录下,但是这个目录在安装过程不会自动创建,所以你需要手动创建data目录,并在data目录中创建db目录。
注意:/data/db 是 MongoDB 默认的启动的数据库路径(–dbpath)。
以下实例中我们将data目录创建于根目录下(/)。
mkdir -p /data/db
如果你不想用默认路径,可以自行设置
注意:如果你的数据库目录不是/data/db,可以通过 --dbpath 来指定。
--dbPath: /你的路径
6.运行 MongoDB 服务
命令行中执行mongo安装目录中的bin目录执行mongod命令来启动mongdb服务。
./mongod
7.MongoDB后台管理 Shell
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({a:10})
WriteResult({ "nInserted" : 1 })
> db.runoob.find()
{ "_id" : ObjectId("5ddb3ebbf7aae2069b97d582"), "a" : 10 }
>
到这里,一个基本的MongoDB已经搭建完毕。
二. MongoDB配置
建立数据库文件夹:mkdir /data/db
建立日志文件夹:mkdir /data/logs
创建配置文件:vim /usr/local/mongodb/mongodb.conf
添加如下配置
# 设置数据文件的存放目录
dbpath = /data/db
# 设置日志文件的存放目录及其日志文件名
logpath = /data/logs/mongodb.log
# 设置端口号(默认的端口号是 27017)
port = 27017
# 设置为以守护进程的方式运行,即在后台运行
fork = true
# 绑定IP
bind_ip = 0.0.0.0
三.添加MongoDB服务
进入system文件夹:cd /lib/systemd/system
创建mongodb.service文件:vim mongodb.service
加入以下内容:(注意:url是以我的mongodb配置的,各位可根据自己的mongodb路径进行修改)
[Unit]
Description=mongodb
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/mongodb.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/mongodb.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
# 启动服务
systemctl start mongodb.service
# 关闭服务
systemctl stop mongodb.service
# 开机启动
systemctl enable mongodb.service
# 添加端口到防火墙
firewall-cmd --zone=public --add-port=27017/tcp --permanent
# 重启防火墙服务
systemctl restart firewalld.service
#打开mongo shell
[root@localhost]# mongo
#添加超级管理账号
> use admin #进入admin表
> db.createUser(
{
user:"root",
pwd:"******",
roles:[{role:"root",db:"admin"}]
}
)
# pwd密码根据实际情况设置
# 查看用户是否创建成功
> show users
在mongodb.conf中加入:auth = true
重启mongodb服务
使用身份认证登录mongo shell
#打开mongo shell
[root@localhost]# mongo
> use admin #进入admin表
> db.auth("root", "******" )
# 创建数据库,使用use DATABASE语句如下
> use database
> db.createUser({
user: 'username',
pwd: '******',
roles: [ { role: "readWrite", db: "database" } ]
})