mongodb

去官网下载系统对应的二进制版本

https://www.mongodb.com/download-center?jmp=nav#community

参考

https://docs.mongodb.com/manual/reference/command/createUser/

https://mongoosejs.com/docs/guide.html

https://www.runoob.com/mongodb/mongodb-tutorial.html

一、服务常用参数

1
./bin/mongod --dbpath ./data/db --logpath ./mongodb.log --fork --auth

–dbpath 数据库的数据存在磁盘上的路径

–fork 后台启动,必须跟logpath参数

–logpath 日志路径

–auth 开启登录密码权限验证

结束mongod可以用 ./bin/mongod –shutdown –dbpath ./data/db

二、如果开启了–auth,则需创建数据库的用户跟密码

先要创建系统管理员root的角色

1
2
use admin
db.createUser({user:'loganv', pwd: '123123', roles:['root'],mechanisms:['SCRAM-SHA-1']})

在切换到其他数据库,创建对应的管理者

1
2
use dbtest
db.createUser({user: "loganv1", pwd: "123abc", roles: [{ role: "dbOwner", db: "dbtest" }]})

三、也可以用配置文件启动,编写配置文件 mongo.cfg

1
mongod --config mongo.cfg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# mongo.cfg 文件
systemLog:
destination: file
path: "./mongodb.log"
logAppend: true
storage:
dbPath: "/data/db"
journal:
enabled: true
security:
authorization: "enabled"
net:
# bindIp: 127.0.0.1
bindIpAll: true
port: 27017
setParameter:
enableLocalhostAuthBypass: false

replSet 配置

创建每个replSet的(至少3个)dbpath文件夹, …data/db1
创建每个replSet的配置(修改对应的参数)

1
2
3
4
5
dbpath=/Users/holly-linlc/Documents/data/db1
bind_ip=192.168.2.7
port=27017
replSet=rs1
auth=false

启动每一个mongodb

./bin/mongod –config ./mongodb3.cfg

连接mongodb

./bin/mongo –host 192.168.2.7 –port 27017

连接成功后,创建replSet信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
var rs_conf={
"_id" : "rs1",
"members" : [
{
"_id" : 0,
"host" : "192.168.2.7:27017"
},
{
"_id" : 1,
"host" : "192.168.2.7:27018"
},
{
"_id" : 2,
"host" : "192.168.2.7:27019"
}
]
}

初始化

1
2
3
4
rs.initiate(rs_conf)

// 查看状态
//rs.status()

mongodb4.事务,参考 http://www.sohu.com/a/242825135_495461

聚合 https://www.cnblogs.com/camilla/p/7908027.html