MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。
下载MongoDB压缩包,解压。
在MongoDB安装目录中,创建特定文件夹并赋予权限。
mkdir data
mkdir logs
cd logs
touch mongo.log
cd ../
chmod 777 data
chmod 777 logs
创建配置文件
vi /datas/server/mongobd-4.0.11/mongodb.conf
port=27017 #端口
dbpath= /datas/server/mongobd-4.0.11/data #数据库存文件存放目录
logpath= /datas/server/mongobd-4.0.11/logs/mongodb.log #日志文件存放路径
logappend=true #使用追加的方式写日志
fork=true #以守护进程的方式运行,创建服务器进程
maxConns=100 #最大同时连接数
#noauth=true #不启用验证
journal=true #每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)。
#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复。
storageEngine=wiredTiger #存储引擎有mmapv1、wiretiger、mongorocks
bind_ip = 0.0.0.0 #这样就可外部访问了,例如从win10中去连虚拟机中的MongoDB
auth = true #用户认证
配置环境变量
vi /etc/profile
#最末尾追加
export PATH=/datas/server/mongobd-4.0.11/bin:$PATH
#环境变量立即生效
source /etc/profile
启动MongoDB
./mongod --config ../mongodb.conf
打开数据库,给数据库创建用户名和密码。
./mongo
//使用admin数据库
use admin
//给admin数据库添加管理员用户名和密码,用户名和密码请自行设置
db.createUser({user:"admin",pwd:"123456",roles:["root"]})
//验证是否成功,返回1则代表成功
db.auth("admin", "123456")
//切换到要设置的数据库,以test为例
use test
//为test创建用户,用户名和密码请自行设置。
db.createUser({user: "test", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})