文章目录
mongodb副本集部署
1. mongo部署副本集集群
1.1 环境
- centos7.5
- 4G内存
- cpu:4核
1.2 集群拓扑图
1.3 下载二进制包
-
本次部署集群所使用mongodb版本为3.6.20
官网下载地址:https://www.mongodb.com/try/download/community
1.4 副本集集群内服务器划分
节点 | ip | 端口 |
---|---|---|
mongodb_01 | 192.168.31.11 | 27017 |
mongodb_02 | 192.168.31.12 | 27017 |
mongodb_03 | 192.168.31.13 | 27017 |
1.5 规划数据目录
1.5.1 mongodb_01
-
创建安装目录
[root@mongodb_01 ~]# mkdir /hdata/mongo_data/{data,log,conf,keyfile} -pv mkdir: 已创建目录 "/hdata" mkdir: 已创建目录 "/hdata/mongo_data" mkdir: 已创建目录 "/hdata/mongo_data/data" mkdir: 已创建目录 "/hdata/mongo_data/log" mkdir: 已创建目录 "/hdata/mongo_data/conf" mkdir: 已创建目录 "/hdata/mongo_data/keyfile"
-
软件路径
[root@mongodb_01 ~]# mkdir /opt/software -pv mkdir: 已创建目录 "/opt/software"
-
将mongodb二进制文件解压到/opt/software
[root@mongodb_01 software]# tar xf mongodb-linux-x86_64-rhel70-3.6.20.tgz -C /opt/software/ [root@mongodb_01 software]# ll 总用量 119116 drwxr-xr-x. 3 root root 135 9月 21 15:03 mongodb-linux-x86_64-rhel70-3.6.20 -rw-r--r--. 1 root root 121973145 9月 21 15:00 mongodb-linux-x86_64-rhel70-3.6.20.tgz
1.5.2 mongodb_02
同1.5.1操作
1.5.3 mongodb_03
同1.5.1操作
1.6 创建mongodb配置文件
[root@mongodb_01 ~]# vim /hdata/mongo_data/conf/mongod.conf
# mongod.conf
systemLog:
destination: file
logAppend: true
path: /hdata/mongo_data/log/mongod.log
storage:
dbPath: /hdata/mongo_data/data
journal:
enabled: true
processManagement:
fork: true # fork and run in background
pidFilePath: /hdata/mongo_data/log/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
net:
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
#security:
# authorization: enabled
# keyFile: /home/mongodb/37017/keyfile/keyfile
# 设置副本集名称
replication:
replSetName: "rs01"
-
将mongodb_01的配置文件拷贝到另外2个节点
# 拷贝到mongodb_02 [root@mongodb_01 ~]# scp /hdata/mongo_data/conf/mongod.conf 192.168.31.12:/hdata/mongo_data/conf/ # 拷贝到mongodb_03上 [root@mongodb_01 ~]# scp /hdata/mongo_data/conf/mongod.conf 192.168.31.13:/hdata/mongo_data/conf/
1.7 分别启动mongodb
-
mongodb_01
[root@mongodb_01 ~]# /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -f /hdata/mongo_data/conf/mongod.conf about to fork child process, waiting until server is ready for connections. forked process: 2402 child process started successfully, parent exiting [root@mongodb_01 ~]# ss -nutl | grep 27017 tcp LISTEN 0 128 *:27017 *:*
-
mongodb_02
[root@mongodb_02 ~]# /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -f /hdata/mongo_data/conf/mongod.conf about to fork child process, waiting until server is ready for connections. forked process: 4418 child process started successfully, parent exiting [root@mongodb_02 ~]# ss -nutl | grep 27017 tcp LISTEN 0 128 *:27017 *:*
-
mongodb_03
[root@mongodb_03 ~]# /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -f /hdata/mongo_data/conf/mongod.conf about to fork child process, waiting until server is ready for connections. forked process: 4453 child process started successfully, parent exiting [root@mongodb_03 ~]# ss -nutl | grep 27017 tcp LISTEN 0 128 *:27017 *:*
1.8 任意登陆一个节点
1.8.1 开启副本集集群
[root@mongodb_01 ~]# /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongo
# 创建副本集配置文件
> conf={"_id":"rs01","members":[{"_id":0,"host":"192.168.31.11:27017"},{"_id":1,"host":"192.168.31.12:27017"},{"_id":2,"host":"192.168.31.13:27017"}]}
{
"_id" : "rs01",
"members" : [
{
"_id" : 0,
"host" : "192.168.31.11:27017"
},
{
"_id" : 1,
"host" : "192.168.31.12:27017"
},
{
"_id" : 2,
"host" : "192.168.31.13:27017"
}
]
}
# 初始化副本集配置文件
> rs.initiate(conf)
{
"ok" : 1,
"operationTime" : Timestamp(1600674253, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1600674253, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
1.8.2 查看副本集集群状态
rs01:SECONDARY> rs.status()
{
"set" : "rs01",
"date" : ISODate("2020-09-21T07:45:25.575Z"),
"myState" : 1,
"term" : NumberLong(1),
"syncingTo" : "",
"syncSourceHost" : "",
"syncSourceId" : -1,
"heartbeatIntervalMillis" : NumberLong(2000),
"optimes" : {
"lastCommittedOpTime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"readConcernMajorityOpTime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"appliedOpTime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"durableOpTime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
}
},
"members" : [
{
"_id" : 0, #第一个节点的id号
"name" : "192.168.31.11:27017", #第一个节点的ip+port
"health" : 1, #第一个节点的健康情况:1表示正常,0表示不正常
"state" : 1,
"stateStr" : "PRIMARY", #第一个节点在副本集的集群状态,primary表示主节点,secondary表示从节点
"uptime" : 1087,
"optime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2020-09-21T07:45:16Z"),
"syncingTo" : "",
"syncSourceHost" : "",
"syncSourceId" : -1,
"infoMessage" : "could not find member to sync from",
"electionTime" : Timestamp(1600674264, 1),
"electionDate" : ISODate("2020-09-21T07:44:24Z"),
"configVersion" : 1,
"self" : true,
"lastHeartbeatMessage" : ""
},
{
"_id" : 1,
"name" : "192.168.31.12:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 72,
"optime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"optimeDurable" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2020-09-21T07:45:16Z"),
"optimeDurableDate" : ISODate("2020-09-21T07:45:16Z"),
"lastHeartbeat" : ISODate("2020-09-21T07:45:24.593Z"),
"lastHeartbeatRecv" : ISODate("2020-09-21T07:45:25.379Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "",
"syncingTo" : "192.168.31.11:27017",
"syncSourceHost" : "192.168.31.11:27017",
"syncSourceId" : 0,
"infoMessage" : "",
"configVersion" : 1
},
{
"_id" : 2,
"name" : "192.168.31.13:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 72,
"optime" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"optimeDurable" : {
"ts" : Timestamp(1600674316, 1),
"t" : NumberLong(1)
},
"optimeDate" : ISODate("2020-09-21T07:45:16Z"),
"optimeDurableDate" : ISODate("2020-09-21T07:45:16Z"),
"lastHeartbeat" : ISODate("2020-09-21T07:45:24.592Z"),
"lastHeartbeatRecv" : ISODate("2020-09-21T07:45:25.379Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "",
"syncingTo" : "192.168.31.11:27017",
"syncSourceHost" : "192.168.31.11:27017",
"syncSourceId" : 0,
"infoMessage" : "",
"configVersion" : 1
}
],
"ok" : 1,
"operationTime" : Timestamp(1600674316, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1600674316, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
1.8.3 查看副本集集群配置
rs01:PRIMARY> rs.conf()
{
"_id" : "rs01",
"version" : 1,
"protocolVersion" : NumberLong(1),
"members" : [
{
"_id" : 0,
"host" : "192.168.31.11:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1, #该节点的优先级
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "192.168.31.12:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 2,
"host" : "192.168.31.13:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"catchUpTimeoutMillis" : -1,
"catchUpTakeoverDelayMillis" : 30000,
"getLastErrorModes" : {
},
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
},
"replicaSetId" : ObjectId("5f6859cde1d641b3427af2a7")
}
}
1.8.4 改变节点优先级,提升为主节点,这里是改变第二台服务器
- 提升mongodb_02优先级
#自定义服务配置信息
rs01:PRIMARY> cfg=rs.conf()
{
"_id" : "rs01",
"version" : 1,
"protocolVersion" : NumberLong(1),
"members" : [
{
"_id" : 0,
"host" : "192.168.31.11:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 1,
"host" : "192.168.31.12:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
},
{
"_id" : 2,
"host" : "192.168.31.13:27017",
"arbiterOnly" : false,
"buildIndexes" : true,
"hidden" : false,
"priority" : 1,
"tags" : {
},
"slaveDelay" : NumberLong(0),
"votes" : 1
}
],
"settings" : {
"chainingAllowed" : true,
"heartbeatIntervalMillis" : 2000,
"heartbeatTimeoutSecs" : 10,
"electionTimeoutMillis" : 10000,
"catchUpTimeoutMillis" : -1,
"catchUpTakeoverDelayMillis" : 30000,
"getLastErrorModes" : {
},
"getLastErrorDefaults" : {
"w" : 1,
"wtimeout" : 0
},
"replicaSetId" : ObjectId("5f6859cde1d641b3427af2a7")
}
}
# 修改第二台服务的优先级,id=1,优先级是2
rs01:PRIMARY> cfg.members[1].priority=2
2
# 重新加载配置信息
rs01:PRIMARY> rs.reconfig(cfg)
{
"ok" : 1,
"operationTime" : Timestamp(1600675177, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1600675177, 1),
"signature" : {
"hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
"keyId" : NumberLong(0)
}
}
}
-
重新查看集群配置信息
rs01:SECONDARY> rs.conf() { "_id" : "rs01", "version" : 2, "protocolVersion" : NumberLong(1), "members" : [ { "_id" : 0, "host" : "192.168.31.11:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 1, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 1, "host" : "192.168.31.12:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 2, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 }, { "_id" : 2, "host" : "192.168.31.13:27017", "arbiterOnly" : false, "buildIndexes" : true, "hidden" : false, "priority" : 1, "tags" : { }, "slaveDelay" : NumberLong(0), "votes" : 1 } ], "settings" : { "chainingAllowed" : true, "heartbeatIntervalMillis" : 2000, "heartbeatTimeoutSecs" : 10, "electionTimeoutMillis" : 10000, "catchUpTimeoutMillis" : -1, "catchUpTakeoverDelayMillis" : 30000, "getLastErrorModes" : { }, "getLastErrorDefaults" : { "w" : 1, "wtimeout" : 0 }, "replicaSetId" : ObjectId("5f6859cde1d641b3427af2a7") } }
-
重新查看集群状态
rs01:SECONDARY> rs.status() { "set" : "rs01", "date" : ISODate("2020-09-21T08:04:54.966Z"), "myState" : 2, "term" : NumberLong(2), "syncingTo" : "192.168.31.13:27017", "syncSourceHost" : "192.168.31.13:27017", "syncSourceId" : 2, "heartbeatIntervalMillis" : NumberLong(2000), "optimes" : { "lastCommittedOpTime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "readConcernMajorityOpTime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "appliedOpTime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "durableOpTime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) } }, "members" : [ { "_id" : 0, "name" : "192.168.31.11:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 2256, "optime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "optimeDate" : ISODate("2020-09-21T08:04:48Z"), "syncingTo" : "192.168.31.13:27017", "syncSourceHost" : "192.168.31.13:27017", "syncSourceId" : 2, "infoMessage" : "", "configVersion" : 2, "self" : true, "lastHeartbeatMessage" : "" }, { "_id" : 1, "name" : "192.168.31.12:27017", "health" : 1, "state" : 1, "stateStr" : "PRIMARY", #id为1的服务已提升为主节点 "uptime" : 1241, "optime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "optimeDurable" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "optimeDate" : ISODate("2020-09-21T08:04:48Z"), "optimeDurableDate" : ISODate("2020-09-21T08:04:48Z"), "lastHeartbeat" : ISODate("2020-09-21T08:04:53.510Z"), "lastHeartbeatRecv" : ISODate("2020-09-21T08:04:54.489Z"), "pingMs" : NumberLong(0), "lastHeartbeatMessage" : "", "syncingTo" : "", "syncSourceHost" : "", "syncSourceId" : -1, "infoMessage" : "", "electionTime" : Timestamp(1600675187, 1), "electionDate" : ISODate("2020-09-21T07:59:47Z"), "configVersion" : 2 }, { "_id" : 2, "name" : "192.168.31.13:27017", "health" : 1, "state" : 2, "stateStr" : "SECONDARY", "uptime" : 1241, "optime" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "optimeDurable" : { "ts" : Timestamp(1600675488, 1), "t" : NumberLong(2) }, "optimeDate" : ISODate("2020-09-21T08:04:48Z"), "optimeDurableDate" : ISODate("2020-09-21T08:04:48Z"), "lastHeartbeat" : ISODate("2020-09-21T08:04:53.436Z"), "lastHeartbeatRecv" : ISODate("2020-09-21T08:04:52.966Z"), "pingMs" : NumberLong(0), "lastHeartbeatMessage" : "", "syncingTo" : "192.168.31.12:27017", "syncSourceHost" : "192.168.31.12:27017", "syncSourceId" : 1, "infoMessage" : "", "configVersion" : 2 } ], "ok" : 1, "operationTime" : Timestamp(1600675488, 1), "$clusterTime" : { "clusterTime" : Timestamp(1600675488, 1), "signature" : { "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="), "keyId" : NumberLong(0) } } }
1.8.5 在主节点插入数据,查看从节点是否同步
-
主节点插入数据
rs01:PRIMARY> for(var i=0;i<10000;i++){db.customer.insert({"name":"user"+i})} WriteResult({ "nInserted" : 1 }) rs01:PRIMARY> db.customer.count() 10000
-
从节点查数据
rs01:SECONDARY> rs.secondaryOk() #开启从节点可查询条件 rs01:SECONDARY> db.customer.count() 10000
1.9 开启用户认证
1.9.1 在主节点创建用户
rs01:PRIMARY> use admin
switched to db admin
rs01:PRIMARY> db.createUser({user:"root",pwd:"root@0321",roles:[{role:"root",db:"admin"}]})
Successfully added user: {
"user" : "root",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
1.9.2 创建安全认证
-
依次停止mongodb副本集集群
-
首先停止mongodb从节点,最后停止主节点
#主节点是mongodb_02,从节点是mongodb_01和mongodb_02 #停止从节点 /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -shutdown -dbpath=/hdata/mongo_data/data #停止主节点 /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -shutdown -dbpath=/hdata/mongo_data/data
1.9.3 创建keyfile文件
-
在任意一台服务器上创建,再复制到其他服务器上
[root@mongodb_01 keyfile]# pwd /hdata/mongo_data/keyfile [root@mongodb_01 keyfile]# openssl rand -base64 756 > keyfile [root@mongodb_01 keyfile]# ll 总用量 4 -rw-r--r--. 1 root root 1024 9月 21 16:32 keyfile [root@mongodb_01 keyfile]# chmod 600 keyfile [root@mongodb_01 keyfile]# ll 总用量 4 -rw-------. 1 root root 1024 9月 21 16:32 keyfile [root@mongodb_01 keyfile]# scp keyfile 192.168.31.12:/hdata/mongo_data/keyfile/ root@192.168.31.12's password: keyfile 100% 1024 1.1MB/s 00:00 [root@mongodb_01 keyfile]# scp keyfile 192.168.31.13:/hdata/mongo_data/keyfile/ root@192.168.31.13's password: keyfile 100% 1024 994.4KB/s 00:00 [root@mongodb_01 keyfile]#
1.9.4 配置mongodb配置文件,然后复制到其他节点
vim /hdata/mongo_data/conf/mongod.conf
# mongod.conf
systemLog:
destination: file
logAppend: true
path: /hdata/mongo_data/log/mongod.log
storage:
dbPath: /hdata/mongo_data/data
journal:
enabled: true
processManagement:
fork: true # fork and run in background
pidFilePath: /hdata/mongo_data/log/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
net:
port: 27017
bindIp: 0.0.0.0 # Listen to local interface only, comment to listen on all interfaces.
#开启认证
security:
authorization: enabled
keyFile: /hdata/mongo_data/keyfile/keyfile
# 设置副本集名称
replication:
replSetName: "rs01"
1.9.5 启动集群
-
先启动主节点,再启动从节点
-
启动mongodb_02为主节点
/opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -f /hdata/mongo_data/conf/mongod.conf
-
在启动从节点01和03
/opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongod -f /hdata/mongo_data/conf/mongod.conf
1.9.6 验证集群
rs01:PRIMARY> use admin
switched to db admin
rs01:PRIMARY> db.auth("root","root@0321")
1
rs01:PRIMARY> rs.status()
{
"set" : "rs01",
"date" : ISODate("2020-09-21T08:43:57.911Z"),
"myState" : 1,
"term" : NumberLong(3),
"syncingTo" : "",
"syncSourceHost" : "",
"syncSourceId" : -1,
"heartbeatIntervalMillis" : NumberLong(2000),
"optimes" : {
"lastCommittedOpTime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"readConcernMajorityOpTime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"appliedOpTime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"durableOpTime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
}
},
"members" : [
{
"_id" : 0,
"name" : "192.168.31.11:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 204,
"optime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"optimeDurable" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2020-09-21T08:43:51Z"),
"optimeDurableDate" : ISODate("2020-09-21T08:43:51Z"),
"lastHeartbeat" : ISODate("2020-09-21T08:43:57.727Z"),
"lastHeartbeatRecv" : ISODate("2020-09-21T08:43:56.679Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "",
"syncingTo" : "192.168.31.12:27017",
"syncSourceHost" : "192.168.31.12:27017",
"syncSourceId" : 1,
"infoMessage" : "",
"configVersion" : 2
},
{
"_id" : 1,
"name" : "192.168.31.12:27017",
"health" : 1,
"state" : 1,
"stateStr" : "PRIMARY",
"uptime" : 211,
"optime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2020-09-21T08:43:51Z"),
"syncingTo" : "",
"syncSourceHost" : "",
"syncSourceId" : -1,
"infoMessage" : "",
"electionTime" : Timestamp(1600677639, 1),
"electionDate" : ISODate("2020-09-21T08:40:39Z"),
"configVersion" : 2,
"self" : true,
"lastHeartbeatMessage" : ""
},
{
"_id" : 2,
"name" : "192.168.31.13:27017",
"health" : 1,
"state" : 2,
"stateStr" : "SECONDARY",
"uptime" : 194,
"optime" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"optimeDurable" : {
"ts" : Timestamp(1600677831, 1),
"t" : NumberLong(3)
},
"optimeDate" : ISODate("2020-09-21T08:43:51Z"),
"optimeDurableDate" : ISODate("2020-09-21T08:43:51Z"),
"lastHeartbeat" : ISODate("2020-09-21T08:43:57.733Z"),
"lastHeartbeatRecv" : ISODate("2020-09-21T08:43:56.404Z"),
"pingMs" : NumberLong(0),
"lastHeartbeatMessage" : "",
"syncingTo" : "192.168.31.12:27017",
"syncSourceHost" : "192.168.31.12:27017",
"syncSourceId" : 1,
"infoMessage" : "",
"configVersion" : 2
}
],
"ok" : 1,
"operationTime" : Timestamp(1600677831, 1),
"$clusterTime" : {
"clusterTime" : Timestamp(1600677831, 1),
"signature" : {
"hash" : BinData(0,"nHTBx8yDoA1Jegprl7DxKay951M="),
"keyId" : NumberLong("6874843624018804737")
}
}
}
1.9.7 导入数据测试账户密码认证及数据是否复制
-
主节点导入数据
#主节点导入数据 [root@mongodb_02 mongo_data]# /opt/software/mongodb-linux-x86_64-rhel70-3.6.20/bin/mongoimport --host 127.0.0.1 --port 27017 -d testa -u root -p root@0321 --authenticationDatabase admin -c thumb_image --file thumb_image.json 2020-09-21T16:52:28.555+0800 connected to: 127.0.0.1:27017 2020-09-21T16:52:31.328+0800 imported 178 documents
-
从节点检查数据
rs01:SECONDARY> db.auth("root","root@0321") 1 rs01:SECONDARY> rs.secondaryOk() rs01:SECONDARY> show dbs admin 0.000GB config 0.000GB local 0.027GB test 0.000GB testa 0.026GB rs01:SECONDARY> use testa switched to db testa rs01:SECONDARY> show collections thumb_image