mongodb
是一种可扩展的敏捷nosql数据库,基于nosql文档存储模型,数据对象被存储为集合中的文档,而不是行列
文档是以二进制json(bson)对象的方式存储的
mongodb中集合:
集合将数据编组,类似于关系型数据库中的表
安装步骤:
官网:https://www.mongodb.com/download-center/v2/community
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.17.tgz
解压:
tar -zxvf mongodb-linux-x86_64-rhel70-3.4.17.tgz
移动到/usr/local下
mv mongodb-linux-x86_64-rhel70-3.4.17 /usr/local/mongodb
为方便启动,将启动文件加入linux path搜索路径:
export PATH=/bin:$PATH
这里是安装路径,这里是: /usr/local/mongodb
即,将/usr/local/mongodb/bin加入搜索路径中
加入profile
vi ~/.bash_profile
PATH=/usr/local/mongodb/bin:$PATH
export PATH
mongodb 必须要创建数据目录,否则会报错,默认的目录为/data/db
这里修改默认的目录:
创建新的数据存放目录:
mkdir -p /data/mongodb/data
mkdir -p /data/mongodb/log
创建配置文件
mkdir -p /data/mongodb/conf
vi /data/mongodb/conf/mongodb.cfg
port = 27017
fork = true #以守护程序的方式启用,即在后台运行
dbpath = /data/mongodb/data
logappend = true
logpath = /data/mongodb/log/mongodb.log
noauth=true
maxConns=200
rest=true
加载环境变量
source ~/.bash_profile
启动mongodb
# mongod -f /data/mongodb/conf/mongodb.cfg
2018-10-xxxxxxxxxxxxxxxxxxx0 I CONTROL [main] ** WARNING: --rest is specified without --httpinterface,
2018-10-xxxxxxxxxxxxxxxxxxx0 I CONTROL [main] ** enabling http interface
about to fork child process, waiting until server is ready for connections.
forked process: 4583
child process started successfully, parent exiting
验证是否端口启动
netstat -ntpl | grep 27017
进入命令行:
mongo
成功显示:
# mongo
MongoDB shell version v3.4.17
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.17
> 5*25*2
10
>
创建数据库,及用户
> use mdevuse mdev
switched to db mdev
>
> db.movie.insert({"name":"abc"})db.movie.insert({"name":"abc"})
WriteResult({ "nInserted" : 1 })
>
>
#创建用户
>
> db.createUser(db.createUser({ user: "dev", pwd: "dev123456", roles: [ "readWrite"] } )
Successfully added user: { "user" : "dev", "roles" : [ "readWrite" ] }
>
#验证
> db.auth("dev","dev123456")db.auth("dev","dev123456")
1
>