主从复制 哨兵服务 数据类型 持久化

配置主从复制

一主多从结构

配置一主一从结构

修改配置文件

配置salve服务器

配置带验证的主从复制

查看密码,默认redis服务没有密码

192.168.88.61:6379> config get requirepass

设置密码 192.168.88.61:6379> config set requirepass 123456

输入密码 192.168.88.61:6379> auth 123456

保全配置 192.168.88.61:6379> config rewrite

[root@localhost ~]# grep -n -i "requirepass" /etc/redis.conf

查看配置文件

配置主机host62

grep -n -i "masterauth" /etc/redis.conf

哨兵服务

  1. 配置主机Host67为master服务器
  2. 配置主机host68为 slave服务器
  3. 配置主机host69运行哨兵服务

配置主机host69运行哨兵服务

停止master主机的redis 服务,原slave角色会升级为主,哨兵服务会自动监视新的master服务,宕机的master 主机恢复后自动配置为当前主的从服务器。

停止master主机的redis 服务

持久化

RDB文件恢复数据

AOF

数据类型

字符类型:

  • 一个变量只能存一个值set getrange strlen append
  • decr decrby incr incrby incrbyfloat

set 命令完整格式演示

设置变量的有效期 px(毫秒) ex (秒) XX 覆盖赋值 NX 不覆盖赋值

set gender girl ex 20 NX

复制代码

增加指定的整数 INCRBY INCR

递减数字 DECR DECRBY

向尾部追加值 append

set hi Hello //创建变量hi append hi " World" get hi "Hello World

获取字符串长度 strlen strlen hi

获取变量部分数据 getrange set zfc ABCEF getrange zfc 0 1 //输出第1个到第2个字符

复制代码
type name //查看类型

列表类型

一个变量可以存多个值,多个值用下标区分

  • lpush llen lrange lpop
  • rpush lindex lset rpop linsert

LPUSH命令用来向列表左边增加元素,返回值表示增加元素后列表的长度

lpush letter A B C

type letter 查看类型

复制代码
取出列表所有元素    lrange letter 0 -1

统计元素个数 llen letter

通过下标输出单个元素 第1个元素下标用0表示 第2个元素下标用1表示

最后一个元素下标用-1表示 lindex letter 0

lset修改元素 lset letter 0 E 修改第1元素

弹出元素(删除元素)

lpop letter 弹出头部元素 rpop letter 弹出尾部元素

尾部追加元素 rpush letter e f 尾部追加元素

插入元素

linsert letter before C C2 值C前插入C2

linsert letter after C C3 值C后插入C3

散列类型

一个变量可以存多个值 ,通过名字区分值,可以通过名字获取不同的值

  • hset hmset hgetall hkeys hvals
  • hget hmget hdel

赋值与取值

hset user1 name bob 创建变量

hget user1 name 查看name列的值

设置多个字段

hmset user1 email bob@tedu.cn phone 13412345678

hmget user1 email phone

获取所有列名及对应的值 hgetall user1

删除列 hdel user1 age

只获取列名 hkeys user1

只获取值 hvals user1

获得列数量 hlen user1

集合类型

无序集合 set: 一个变量可以储存多个值,无序集合中的每个元素都是不同的,且没有顺序

sadd smembers scard srem sinter sunion sdiff

sismember srandmember spop

创建/追加/删除/查看

sadd mylike film music game 创建

type mylike 查看数据类型

sadd mylike sleep game it 追加,自动删除重复的值

srem mylike sleep game 删除成员

smembersmylike 查看成员

判断元素是否在集合中 :

sismember mylike game 输出0表示不存在

sismember mylike music 输出1表示存在

输出成员个数 scard mylike

查看 mylike 成员 smembers mylike

创建helike变量 sadd helike film music game sleep

复制代码
合并2个集合的成员,重复的成员只显示一次

sunion mylike helike

交集 输出2个集合中相同的成员 sinter mylike helike

差集: 比较2个集合成员的不同,用第一个集合 与 第二个集合比较

sdiff mylike helike sdiff helike mylike

随机获得集合中的成员

在集合helike中随机取出两个成员,允许获取2个相同的成员。

复制代码

集合中随机弹出一个成员

复制代码
有序集合:

zadd zrem zcard zrange zscore zcount

zincrby zrank zrevrank

ZADD命令的返回值是新加入到集合中的元素个数

复制代码
zadd scores 88 tom 90 jerry 75 bob 92 alice 创建变量

type scores 查看类型

zcard scores 统计成员个数

zrange scores 0 -1 输出成员名称

zrange scores 0 -1 withscores 输出成员名称及对应的值

获得某个成员的值 zscore scores tom

获得指定分数范围的元素 zrangebyscore scores 80 90 withscores

-增加某个元素的分数 zincrby scores 3 bob

复制代码
获得指定分数范围内的元素个数   zcount scores 80 90

删除元素 zrem scores bob

  1. 获得元素的排名
相关推荐
qq_5298353518 分钟前
Redis作为缓存和数据库的数据一致性问题
数据库·redis·缓存
山猪打不过家猪5 小时前
ASP.NET Core Clean Architecture
java·数据库·asp.net
qwy7152292581636 小时前
13-R数据重塑
服务器·数据库·r语言
Bio Coder6 小时前
R语言安装生物信息数据库包
开发语言·数据库·r语言
钊兵7 小时前
数据库驱动免费下载(Oracle、Mysql、达梦、Postgresql)
数据库·mysql·postgresql·oracle·达梦·驱动
weixin_425878238 小时前
Redis复制性能优化利器:深入解析replica-lazy-flush参数
数据库·redis·性能优化
左灯右行的爱情8 小时前
Redis数据结构总结-listPack
数据结构·数据库·redis
隔壁老王1569 小时前
mysql实时同步到es
数据库·mysql·elasticsearch
想要打 Acm 的小周同学呀9 小时前
Redis三剑客解决方案
数据库·redis·缓存