MongoDB-入门

1. 简介

mongoDB是非关系型数据库,存储类似json格式数据

2. docker安装

2.1 docker搭建单节点

1
2
3
4
5
6
7
8
9
docker run -d \
--name mongo \
-p 27017:27017 \
-v /dockerdata/mongo/data:/data/db \
-v /dockerdata/mongo/backup:/data/backup \
-v /dockerdata/mongo/conf:/data/configdb \
-e MONGO_INITDB_ROOT_USERNAME=root \
-e MONGO_INITDB_ROOT_PASSWORD=aacopy.cn \
mongo --auth

2.2 docker搭建伪集群

如果需要支持mongo的事务,需要集群模式,这里搭建一个简单的伪集群做事务测试

  • 编写配置文件
  • vim /dockerData/mongo/config/mongod.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# mongod.conf

# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
storage:
dbPath: /data/db
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger:

# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log

# network interfaces
net:
port: 27017
# bindIp: 127.0.0.1
bindIpAll: true

# how the process runs
processManagement:
timeZoneInfo: /usr/share/zoneinfo

#security:
# authorization: enabled
# keyFile: /etc/mongo/keyFilers0.key

#operationProfiling:

replication:
oplogSizeMB: 150
replSetName: itdeve-mongodb
sharding:
clusterRole: shardsvr

## Enterprise-Only Options:

#auditLog:

#snmp:
  • 执行docker命令
1
2
3
4
docker run -d --name mongo -p 27017:27017 \
-v /dockerData/mongo/data/db:/data/db \
-v /dockerData/mongo/config/mongod.conf:/etc/mongo/mongod.conf \
mongo:4.4.5 --config /etc/mongo/mongod.conf
  • 进去容器:docker exec -it mongo /bin/bash

  • 打开mongo命令行 mongo

  • 依次执行命令

1
2
3
4
use admin
rs.initiate()
rs.conf()
exit
  • 伪集群搭建完成,可以测试事务