Redis学习笔记

启动

拉取镜像并创建容器参考https://yutian.blog.csdn.net/article/details/119405755
docker start redis01启动容器,前题是容器已经存在了,如果不存在,可以先使用run命令创建容器
docker exec -it redis01 bash 进入运行中的容器
redis-cli进入redis

root@be640cf67f13:/data# redis-cli
127.0.0.1:6379> 

使用

shutdown在redis里面,就是6379> 后面执行时是安全关闭redis的方式。redis使用此种方式退出时,会把各数据库里面的数据持久化到硬盘dump.rdb文件中
help查看帮助

127.0.0.1:6379> help
redis-cli 6.2.5
To get help about Redis commands type:
      "help @<group>" to get a list of commands in <group>
      "help <command>" 获得command命令的相关帮助
      "help <tab>" to get a list of possible help topics
      "quit" to exit

To set redis-cli preferences:
      ":set hints" enable online hints
      ":set nohints" disable online hints
Set your preferences in ~/.redisclirc

help command查看command命令的帮助

127.0.0.1:6379> help command

  COMMAND -
  summary: 获得redis命令详情的列表(数组)
  since: 2.8.13
  group: server

  COMMAND COUNT -
  summary: redis命令的总数
  since: 2.8.13
  group: server

  COMMAND GETKEYS -
  summary: Extract keys given a full Redis command
  since: 2.8.13
  group: server

  COMMAND INFO command-name [command-name ...]
  summary: Get array of specific Redis command details
  since: 2.8.13
  group: server

type key 查看key的数据类型,有string、list、set、hash

127.0.0.1:6379> type a
list

set title redis"redis"字符串存储到title这个键里
expire key Set a key’s time to live in seconds

127.0.0.1:6379> set title redis
OK
127.0.0.1:6379> expire title 10 #设置title多久后失效
(integer) 1
127.0.0.1:6379> ttl title #查看title生命周期内剩余时间,就是还有多久失效
(integer) 6
127.0.0.1:6379> ttl title
(integer) 1
127.0.0.1:6379> ttl title
(integer) -2
127.0.0.1:6379> ttl title
(integer) -2
127.0.0.1:6379> get title
(nil)					  #title已经失效了,所以取不到值了

keys *查看存储的所有的key
keys a*查找以a开头的key

127.0.0.1:6379> keys *
1) "title"
2) "y"
3) "id"

select 0切换数据库,默认单机状态下有16个数据库,使用此命令在各数据库间切换
flushdb清除当前数据库
flushall清除所有数据库的数据

String相关函数

命令解释
incr key指定key的值加1
incrby key increment指定key的值增加increment
decr key指定key减1
decrby key decrement指定key减掉decrment
strlen key获得指定key的字符串长度,一个中文长度为3
mset key value [key value ...]同时存储多个键值对
mget key [key ...]同时获取多个键的值
append key value向指定的key追加value
del key [key ...]删除key

Hash类型

命令解释
hset key field value设置key的field属性的值为value
hset user id 100 name tony设置一个user,id为100,name为tony
hget user id取user的id的值
hgetall user取user里面所有属性的值
hincrby user id 1给user的id属性增加1
hdel user id删除user的id属性
hexists user ageuser的age属性是否存在,0不存在,1存在
hkeys user取user的所有的属性列表
hvals user取user所有的值,就是值的列表,不包含属性名
del user清空user

List类型

命令解释
lpush a avalue [element ...]从a左边push一个值avalue,或多个值 ,表示依次push
lpop a [count]从a左边弹出一个值,或多个值
rpush a bvalue [element ...]从a的右边push一个值bvalue,或多个值
rpop a [count]从a右边弹出一个值,或多个值
lrange a 0 -1打印a,从左边数第一个开始到右边数第一个结束
llen a返回a的元素的个数
lindex a index返回名称为a的list中index位置的元素
ltrim a start stop保留名为a的list中的start位置到stop位置的元素
lrem a n element删除名为a的list中的前n个element元素
lset a 0 element把名为a的list的0号位置的值设置为element
rpoplpush list1 list2从第一个list的尾部移除元素并添加到第二个list的头部,最后返回被移除的元素值,整个操作是原子的.如果第一个list是空或者不存在返回nil
del a清空a

Set类型

命令解释
sadd set a b b c把所有元素插入set中,会自动去重,无序
smembers set获得集合中的元素
scard set获得集合中元素的个数
sismember set a判断set中是否有a这个元素,1存在,0不存在
smove set1 set2 a把a元素从set1中移动到set2中
scard set1查set1中有多少个元素
spop set1从set1中随机弹出一个元素
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

水晶心泉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值