Redis Conclusion

1、什么是redis

Redis是一个基于内存的使用C语言编写的key-value开源的NOSQL存储系统。不支持SQL语句。

 

 

2、Redis持久化数据的方式有哪些

  1. RDB 触发式的序列化

Save  5  2    (5秒钟  有两个动作便会触发序列化)

  1. AOF 日志形式的序列化

默认:一秒钟存储一次

 

3、解决IT行业数据读取瓶颈的终极方案

读写分离

 

4、Redis如何实现读写分离?

Redis本身支持读写分离,主节点可以读数据、可以写数据、从节点只能读数据。配置redis的主从复制机制可实现读写分离。

在从节点的配置文件中: 配置  slaveof  主机名   端口

 

 

5、介绍哨兵机制

哨兵机制解决了当主节点宕机导致的业务数据无法写入redis的问题。

 

在redis的主从复制结构中,若没有哨兵机制,主节点宕机,将无法写数据到redis集群。

配置哨兵机制,当主节点宕机后,哨兵会在原本为从节点的服务器中选取一个作为主节点,接受外部数据的写入。以此实现当主节点宕机后redis依然可以写入数据的功能。

 

 

redis字符串操作必须掌握

 

添加字符串

set  hello world

设置多个KV

mset AA AAA BB BBB CC CCC

设置过期时间

setex hello1  5 word1

查询字符串

get  hello

查询多key

mget hello hello2 hello3

查询长度

strlen  hello

修改字符串

set  hello  world2

删除字符串

del  hello

 

 

Hash必须掌握

 

添加一个hash列表

hset hkey1 name zhangsan

一次设置多个值

hmset hkey3 name wangwu age 20 sex 1

查看数据

hget hkey1 name

查询key内所有的字段

hkeys hkey3

查询key的数据量

hlen hkey3

查询某一key内多字段的值

hmget  hkey3 name age

修改数据

hset hkey1 name zhangsan2

删除key中的数据

hdel hkey3 sex

 

 

List必须掌握

 

添加一个或多个值到列表

lpush lkey1 zhangsan lisi

向已经存在的列表中插入数据(右边插入)

rpush lkey1 AA  BB

查询list中所有数据 (-1表示所有)

lrange lkey1 0 -1

通过索引查询数据

lindex lkey1 0

通过索引修改数据

lset lkey1 5 eee

删除指定key数据

del lkey1

移出并获取列表的第一个元素

lpop lkey1

移出并获取列表的最后一个元素

rpop lkey1

移除列表的最后一个元素,并将该元素添加到另一个列表并返回

rpoplpush lkey1 lkey2

Set 必须掌握

 

向集合添加一个或多个数据

sadd skey1  zhangsan  lisi 

查询集合所有数据

smembers skey1

查询两个集合的差值

sdiff skey1 skey2

查询两个集合交集

sinter skey1 skey2

查询并集

sunion skey1  skey2

将数据在一个集合移动到另一个集合

smove skey1 skey2 zhangsan

移除结果中的某个数据

srem skey2 zhangsan

对Key的常用操作

查询所有符合模式的key

Keys *

查询key对应数据的类型

Type hkey1  

查询剩余过期时间(秒)

ttl  hkey1

对key进行重命名

Rename  hkey1  hkey10

删除存在的key

del BB

 

 

Redis默认有16个数据库

使用 select N (0-15)实现数据库的切换

flushdb  清空一个数据库内的所有数据

flushall  清空所有数据库内的所有数据

发布了218 篇原创文章 · 获赞 291 · 访问量 29万+

猜你喜欢

转载自blog.csdn.net/bbvjx1314/article/details/105216708