nosql的4个基本实验样例

mongodb复制集群搭建

1、主机配置文件
primary.conf

dbpath=/usr/local/MongoDB/data/replication/primary
logpath=/usr/local/MongoDB/logs/replication_log/primary.log
logappend=true  # 日志追加写入
replSet=replication1  # 复制集名称
port=27117
oplogSize=10000  # 操作日志容量
fork=true  # 后台启动

2、从机配置文件

1)、secondary1.conf

dbpath=/usr/local/MongoDB/data/replication/secondary1
logpath=/usr/local/MongoDB/logs/replication_log/secondary1.log
logappend=true  # 日志追加写入
replSet=replication1 # 复制集名称
port=27118
oplogSize=10000  # 操作日志容量
fork=true  # 后台启动

2)、secondary2.conf

dbpath=/usr/local/MongoDB/data/replication/secondary2
logpath=/usr/local/MongoDB/logs/replication_log/secondary2.log
logappend=true  # 日志追加写入
replSet=replication1 # 复制集名称
port=27119
oplogSize=10000  # 操作日志容量
fork=true  # 后台启动

3、仲裁配置文件

1)、arbitration1.conf

dbpath=/usr/local/MongoDB/data/replication/arbitration1
logpath=/usr/local/MongoDB/logs/replication_log/arbitration1.log
logappend=true  # 日志追加写入
replSet=replication1 # 复制集名称
port=27120
oplogSize=10000  # 操作日志容量
fork=true  # 后台启动

2)、arbitration2.conf

dbpath=/usr/local/MongoDB/data/replication/arbitration2
logpath=/usr/local/MongoDB/logs/replication_log/arbitration2.log
logappend=true  # 日志追加写入
replSet=replication1 # 复制集名称
port=27121
oplogSize=10000  # 操作日志容量
fork=true  # 后台启动

启动mongodb
mongod --config  /root/mongodb/replication/configs/db0.conf

进入客服端
./mongo --port 27117

初始化  priority:权重(数字越大优先级越高)arbiterOnly:是否是仲裁节点

rs.initiate({ _id:"replication1",
 members:[ {_id:0,host:"127.0.0.1:27117",priority:3}, 
{_id:1,host:"127.0.0.1:27118",priority:2}, 
{_id:2,host:"127.0.0.1:27119",priority:2}, 
{_id:3,host:"127.0.0.1:27120",arbiterOnly:true},
{_id:4,host:"127.0.0.1:27121",arbiterOnly:true}] });


rs.slaveOk()允许在从节点上读取数据

查看状态rs.isMaster()

消息队列

一对一
先订阅:subscribe pingdao1
再另一个发布:publish pingdao1 yaofadeneirong
一对多
多台一起订阅:subscribe pingdao1
再发布:publish pingdao1 yaofadeneirong
 

redis哨兵模式

1、master.conf 配置文件

bind 0.0.0.0 
port 6346 
daemonize yes 
protected-mode no 
pidfile "/var/run/6346.pid" 
dbfilename "dump.rdb"

2、server.conf配置文件

bind 0.0.0.0 
port 6347 
daemonize yes
protected-mode no
pidfile "/var/run/6347.pid"
dbfilename "dump6347.rdb"
slaveof  127.0.0.1  6346

3、sentinel.conf配置文件

port 6349
daemonize yes
pidfile "/var/run/redis-sentinel.pid"
protected-mode no
sentinel monitor mymaster  127.0.0.1 6346 1 
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 15000


#####
sentinel monitor mymaster  127.0.0.1 6346 1 
- sentinel`:指示是哨兵配置命令。
- `monitor`:监控命令,用于配置哨兵监控指定的主节点。
- `mymaster`:指定主节点的名称,可以根据你的需求自定义名称。
- `127.0.0.1`:主节点的 IP 地址,这里使用的是 `127.0.0.1`,表示本地主机。你可以将其替换为实际的主节点 IP 地址。
- `6379`:主节点的端口号,这里使用的是 `6379`,表示 Redis 默认的端口号。你可以将其替换为实际的主节点端口号。
- `1:指定如果超过 `1` 个哨兵认为主节点不可用,那么就会进行故障转移。
#####

4、启动redis

主机:redis-server ./master.conf

 从机:redis-server ./server.conf 

哨兵:redis-sentinel ./sentinel.conf

5、查看状态
info replication

6、读写分离:

写:

set name "zhangsan"

读:keys *

7、主机宕机:

主机:shutdown

从机:info replication

MongoDB基本操作

1、启动服务
mongod --config /root/mongodb/mongodbServer/bin/mongod.conf
2、可进入 mongoDB 的 shell 命令行
mongo
3、插入数据
db.db3.insert({"name":"zhangsan","age":20})

4、修改操作
将zhangsan改为lisi
db.db3.update({"name":"zhangsan"},{"$set":{"naem":"lisi"}})
将年龄-3
db.db3.update({"name":"zhangsan"},{"$inc":{"age:-3"}})
5、查找操作

db.db3.find()
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值