下面我将详细讲解 MongoDB 实现主从读写分离实现的实例代码.
MongoDB 主从复制(replication)是指在 MongoDB 中允许将一台 MongoDB 服务器指定为主节点(master),其他 MongoDB 服务器则作为从节点(slave),从主节点复制数据.
实现 MongoDB 主从复制,需要进行以下步骤:
在 MongoDB 主节点上,需要创建配置文件 mongodb.conf,并在其中添加如下配置信息:
port=27017 # 设置 MongoDB 监听端口号
dbpath=/data/db # 设置 MongoDB 数据存储路径
logpath=/data/logs/mongodb.log # 设置 MongoDB 日志文件路径
logappend=true # 追加写日志,否则会覆盖之前的日志信息
fork=true # 设置 MongoDB 以守护进程方式运行
replSet=rs0 # 设置 MongoDB 复制集的名称
然后,启动 MongoDB:
mongod -f mongodb.conf
在 MongoDB Shell 中,初始化复制集:
rs.initiate()
在 MongoDB 从节点上,同样需要创建配置文件 mongodb.conf,并在其中添加如下配置信息:
port=27018 # 设置 MongoDB 监听端口号
dbpath=/data/db # 设置 MongoDB 数据存储路径
logpath=/data/logs/mongodb.log # 设置 MongoDB 日志文件路径
logappend=true # 追加写日志,否则会覆盖之前的日志信息
fork=true # 设置 MongoDB 以守护进程方式运行
replSet=rs0 # 设置 MongoDB 复制集的名称
mongod -f mongodb.conf
将从节点加入到复制集中:
rs.add("IP地址:27018")
可以在主节点中,向 MongoDB 数据库写入数据:
use mydb
db.foo.insert({name:"test"})
然后在从节点中,查询写入的数据:
use mydb
db.foo.find()
最后,如果成功从从节点查询到写入数据,说明 MongoDB 主从复制配置成功.
在 MongoDB 路由节点上,需要创建配置文件 mongodb.conf,并在其中添加如下配置信息:
port=27019 # 设置 MongoDB 监听端口号
dbpath=/data/db # 设置 MongoDB 数据存储路径
logpath=/data/logs/mongodb.log # 设置 MongoDB 日志文件路径
logappend=true # 追加写日志,否则会覆盖之前的日志信息
fork=true # 设置 MongoDB 以守护进程方式运行
configdb=IP地址1:27017,IP地址2:27017,IP地址3:27017 # 设置 MongoDB 配置服务器
mongos -f mongodb.conf
注意:路由节点不需要加入复制集.
修改主从节点的配置文件 mongodb.conf,并添加如下配置信息:
replication:
replSetName: rs0
... # 其他配置信息
sharding:
clusterRole: shardsvr
启动主从节点:
mongod --config mongodb.conf
在路由节点的 MongoDB Shell 中,可以使用 sh.status() 命令查看服务器状态信息.通过查看状态信息,可以确认 MongoDB 主从复制是否配置成功.
在路由节点的 MongoDB Shell 中,可以使用如下语句来测试主从读写分离:
use dbtest
db.test.insert({name: "test"})
db.test.find()
查看日志可知,写入数据时,数据插入的是主节点,查询数据时,则是从节点读取返回.这说明 MongoDB 主从读写分离配置成功.
以上就是土嘎嘎小编为大家整理的mongoDB_实现主从读写分离实现的实例代码相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!