千千梦丶琪 发表于 2024-8-1 06:15:58

Redis超详细入门教程(基础篇)

目次
一、什么是Redis
二、安装Redis
1、Windows系统安装
2、Linux系统安装 
三、Redis通用下令
四、Redis基本下令
五、五种数据布局类型
5.1、String类型
5.2、List聚集类型
5.3、Set聚集类型
5.4、Hash聚集类型
5.5、Zset有序聚集类型
六、总结

一、什么是Redis

Redis是一个开源的基于内存的键值对数据库,它的紧张特性和作用包括:
1、基于内存,读写速度极快,可以处理大量读写请求。
2、支持多种数据布局,如字符串、哈希、列表、聚集、有序聚集等,具有丰富的数据表示本事。 3、支持主从复制,提供数据冗余和故障恢复本事。
4、支持持久化,可以将内存数据保存到磁盘中。
5、支持事件,可以一次实行多个下令。
6、丰富的功能,可用于缓存、消息队列等场景。
紧张应用场景包括:
1、缓存常见的使用场景,比如缓存查询效果、热门数据等,大大低沉数据库负载。
2、处理大量的读写请求,比如访问统计、消息队列等。
3、排行榜、计数器等功能的实现。
4、pub/sub消息订阅。
5、QUE计划任务
6、分布式锁等。
综上,Redis是一个性能极高的内存数据库,支持丰富数据布局,提供持久化、事件等功能,非常适合缓存、消息队列等场景,被广泛应用于各种大型系统中。它的高性能、丰富功能使其成为非关系型数据库的紧张选择之一。
二、安装Redis

1、Windows系统安装

Redis官网对于Windows版本已经制止维护了,我直接上传到了云盘,大家可以直接下载:
   https://pan.baidu.com/s/1_2vMncYBVI3jKkh9II9Kag?pwd=8hjr
1、解压以后,先双击redis-server.exe启动服务器
https://i-blog.csdnimg.cn/blog_migrate/b4586e85504cf8a82194cae24ec2aa32.png
运行成功 
https://i-blog.csdnimg.cn/blog_migrate/67ace092e9a778e5947febb644d798f7.png
2、双击redis-cli.exe启动下令窗口即可
https://i-blog.csdnimg.cn/blog_migrate/f1a4c3a7f98406372f02ed38a6b3b45b.png
这样就可以在Windows操作Redis了。 
https://i-blog.csdnimg.cn/blog_migrate/afe610c1500ad9256598850157a72358.png
2、Linux系统安装 

可以直接看我这篇博客,步骤完整详细:Linux系统安装部署Redis完整教程(图文详解)
三、Redis通用下令

1、Redis默认有16个数据库,切换到第2个数据库
select 1 2、查看当前数据库key的数目
DBSIZE 3、设置一个key为username,值为mike的数据
set username mike 4、获取key为username的值
get username 5、获取所有的key
keys * 6、清除当前数据库
flushdb 7、清楚所有数据库
flushall 四、Redis基本下令

1、查询key为username是否存在
exists username 2、指定key为username移动到1号数据库
move username 1 3、指定key为username10s后过期
expire username 10 4、查看key为username还有多久过期
ttl username 5、查看key为username是什么类型
type username 五、五种数据布局类型

5.1、String类型

1、设置key为name的值为htt
set name htt 2、获取key为name的值
get name 3、拼接key为name的值:httstudy
append name study  4、获取key为name的值的长度
strlen name 5、设置key为view的值加1 
incr view 6、设置key为view的值减1
decr view 7、设置key为view的值加10
incrby view 10 8、设置key为view的值减10
decrby view 10 9、截取下标为0-3之间的字符串,例如:abcdef,截取后abcd
getrange name 0 3 10、从下标为1举行替换字符串,例如:abcdef,替换后a000efg
setrange name 1 000 11、设置key为name的值为hello,10s后过期
setex name 10 hello 12、如果不存在key为title的,值设置为redis,如果存在,则set失败
setnx title redis 13、一次性设置多个值
mset k1 v1 k2 v2 k3 v3 mset user:1:name htt user:1:age 2 14、一次性获取多个值
mget k1 k2 k3 mget user:1:name user:1:age 15、如果k1已经存在,则k1,k4全部设置失败,参考事件的原子性操作
msetnx k1 v1 k4 v4 16、如果不存在key为username的值,则返回nil,然后set进去;如果存在值,则获取原来的值并设置新的值
getset username htt https://i-blog.csdnimg.cn/blog_migrate/e5a4df2685ab4e754729c900d20eb091.png
看了图会更好明白一些!
5.2、List聚集类型

1、将一个值大概多个值插入到列表的头部
lpush list 1 https://i-blog.csdnimg.cn/blog_migrate/3155e007b4575f8219d2cd6523e98546.png
2、将一个值大概多个值插入到列表的尾部
rpush list 4  https://i-blog.csdnimg.cn/blog_migrate/07cd8fccca0df00a3dbc616e09eb82c9.png
3、通过区间获取具体的值
lrange list 0 -1 4、移除list的第一个元素:3
lpop list 5、移除list的最后一个元素:4
rpop list 6、通过下标获得list当中的某一个值
lindex list 0 7、获取list的长度
llen list  8、移除list聚集指定个数的value,移除1个值为2的,准确匹配
lrem list 1 2 9、截取list聚集中下标为1到下标为2之间的元素聚集,并覆盖原来的list聚集
ltrim list 1 2  10、更新list聚集当中下标为0的值为bbb,如果下标0的值不存在,则报错
lset list 0 bbb 11、将一个某一个具体的值插入到某一个具体元素(默认第一个)的前面大概后面
linsert list BEFORE kkk aaa https://i-blog.csdnimg.cn/blog_migrate/7d526e10e25e532e7cc8acb731afa3ac.png
linsert list AFTER kkk aaa https://i-blog.csdnimg.cn/blog_migrate/b44ff342b1e4221f85e06b9b48c606fb.png
5.3、Set聚集类型

1、往set聚集中添加一个元素
sadd set hello 2、查看set聚集中所有元素
smembers set 3、 查看set聚集中是否存在某元素
sismember set world  4、随机抽取出1个元素
srandmember set 5、随机抽取出2个元素
srandmember set 2 6、随机删除set聚集中某个元素
spop set 7、移动set聚集中的world元素到set2聚集中
smove set set2 world 8、作set2聚集减去set聚集的差集
sdiff set2 set https://i-blog.csdnimg.cn/blog_migrate/8450fe8ff2015fec9784754d9b460b3c.png
9、set和set2的交集
sinter set set2 10、set和set2作并集并去重
sunion set set2 https://i-blog.csdnimg.cn/blog_migrate/5e3992493fbcd74ad3bb9ad33a3a6bd5.png
5.4、Hash聚集类型

1、往hash聚集中存放键值对数据
hset hash username mike 2、从hash聚集中获取数据
hget hash username 3、同时往hash聚集中添加多个值
hmset hash username jack age 2 4、同时往hash聚集中获取多个值
hmget hash username age 5、获取hash聚集中所有的键值对
hgetall hash 6、删除hash聚集中指定的key字段
hdel hash username 7、获取hash聚集的长度
hlen hash 8、判定hash聚集中指定字段是否存在
hexists hash username 9、获取hash聚集中所有的key
hvals hash 10、获取hash聚集中所有的值
hkeys hash  11、指定hash聚集中指定增量
hincrby hash views 1 12、如果不存在则直接设置值,存在则设置失败
hsetnx hash password 123456 5.5、Zset有序聚集类型

1、添加一个值
zadd zset 1 first 2、添加多个值
zadd zset 2 second 3 third 4 four 3、获取zset聚集中所有元素
zrange zset 0 -1 4、给zset聚集中的元素从小到大排序,-inf:负无穷,+inf:正无穷
zrangebyscore zset -inf +inf https://i-blog.csdnimg.cn/blog_migrate/f51753f18d1072bd46b76bbb9619abb1.png
5、从小到大排序并输出键值
zrangebyscore zset -inf +inf withscores https://i-blog.csdnimg.cn/blog_migrate/a2f0d9b51a992e9afc6075bda6436489.png
6、指定负无穷到1的范围
zrangebyscore zset -inf 1 withscores https://i-blog.csdnimg.cn/blog_migrate/052b347be2397cda1f81b741c872dd04.png
7、移除zset聚集中指定的元素
zrem zset four 8、查看zset聚集中元素个数
zcard zset  9、反转指定范围
zrevrange zset 1 2 https://i-blog.csdnimg.cn/blog_migrate/5c690ddea425461422ac13ca7b68a141.png
六、总结

以上就是Redis入门教程的详细条记总结,后续博客主页会继承更新关于Redis的内容!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Redis超详细入门教程(基础篇)