十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
vim /etc/yum.repos.d/mongodb-org-4.2.repo #新建仓库文件
石楼ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联公司的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作![mongodb-org-4.2]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.2/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
几个包的作用
1.mongodb-org-server: 主程序包含MongoDB守护进程和相关的配置和初始化脚本。
2.mongodb-org-mongos: 包含mongos的守护进程。(切片分库使用的)
3.mongodb-org-shell: 包含mongo shell。
4.mongodb-org-tools: 包含MongoDB的工具: mongoimport, bsondump, mongodump, mongoexport, mongofiles, mongooplog, mongoperf, mongorestore, mongostat, and mongotop。
yum install mongodb-org -y
三.配置复制集
先安装好两个节点,在配置每个节点的配置,配置除了监听IP不一样其均一样配置
vim /etc/mongo.conf
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
storage:
dbPath: /var/lib/mongo
journal:
enabled: true
processManagement:
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
net:
port: 27017
bindIp: 192.168.0.11
replication: #开启复制集功能
replSetName: test-rc #名称注意不能顶格写否则报错
mongo -host 192.168.0.9 #进入节点
rs.status() #查看复制集状态
两个节点都和上图一样说明复制集正常启动了
cfg={"_id":"test-rc","members":[{"_id":0,"host":"192.168.0.9:27017"},{"_id":1,"host":"192.168.0.11:27017"}]}
#定义初始化参数,将两个host主机加入到test-rc复制集当中
rs.initiate(cfg) #启动复制集功能(初始化配置时要保证从节点没有数据)
rs.status() 查看复制集状态三,增加新节点,删除节点
现在192.168.0.13 新节点上安装好mongodb 配置里加入复制集并启动起来
登录主节点
rs.add("192.168.0.13:27017") #加入新的节点
re.status()
查看复制集状态,可以看到192.168.0.13节点已然在线了
rs.remove("192.168.0.13:27017") #删除节点
再用rs.status()查看下,可以发现已经没有192.168.0.13节点的信息了四,手动切换节点
rs.freeze(30) #暂停30s 不参与选举
rs.stepDown(60,30) #交出主节点位置,维持从节点状态不少于60秒,等待30秒使主节点和从节点日志同步(用于切换)五,设置从节点可读
db.getMongo().setSlaveOk() #设置从节点可读
主节点
从节点
mongodump --port 20000 --host 192.168.0.9 -d testdb -o /root/test
#只备份testdb 数据库,备份到/root/test/ 路径 注意 上面有两个--
mongorestore -d k1 /root/test/testdb/
#把/root/test/testdb/ 里的备份的数据,恢复成k1数据库
mongodump --port 20000 --host 192.168.0.9 -o /root/all
#备份所有数据
mongoexport --port 20000 --host 192.168.0.9 -d testdb -c table1 -o /root/table1.json
#只备份testdb库里的 table1 表
mongoimport --host 192.168.0.14 -d k1 -c table2 --file=/root/table1.json
#把/root/table1.json 的数据恢复到k1库 table2 表
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。