linux下Redis常用命令使用

描述

 

1、redis重启,缓存数据还在,redis清缓存数据:

 

  redis-cli -h  IP  -p port     ##登录redis
  flushall     #运行flushall,清缓存数据

 

注:redis重启后,数据还在,因为redis有持久化策略。redis默认开启rdb持久化策略,会产一个rdb.dump文件,重启时会从该文件导入数据。如果是配置了AOF持久化策略,也会产一个相应的文件,redis重启时会优先从这个文件导入数据。

2、redis客户端使用

 

新建key:
>  set  keyname  “要设置的key的value”
查看key的value
> get  keyname 
删除key
>  del  keyname   
比如下图,keyname=test    value=123

 

Linux系统

Linux系统

 

选择redis中db:
>   select  7
查看该db中的所有key:
>  keys  *
切换到redis的db 10,直接select就OK,不需要退出db7:
>  select  10
>  keys *

 

可以看到db7和db10中没有key

——默认我们直接进入的是redis的 db0,当我们select进入到其他db之后,要想切换为最初进入的状态,只需要select  0,就OK

Linux系统

可以看到当为db0时,端口后边不跟具体的数据;当为db10时,端口后边跟[10],表示当前在db10

——将redis的key值中的数字值增加1:

Linux系统

——redis,把key中的值序列化:

序列化:把对象转化为可传输的字节序列过程称为序列化。

反序列化:把字节序列还原为对象的过程称为反序列化。

命令:> dump  keyname

Linux系统

——检查redis中key是否存在,若key存在返回1,不存在则返回0

Linux系统

——给redis的key设置过期时间,以秒为单位,比如下图就是给test1这个key设置10秒后过期,自动删除:

Linux系统

如图所示10秒后,test1这个key再次查看已经自动删除

——类似上一个功能,给redis的key设置过期时间,但是这个是以unix时间戳的形式设置过期时间,此处推荐一个时间戳在线转换工具:https://tool.lu/timestamp/  :

Linux系统

如图所示,转存时间2021-12-10 1450 为unix时间戳形式为1639116230

Linux系统

——设置key的过期时间,以毫秒为单位

Linux系统

 如果所示,设置过期时间为2000毫秒,即2秒,到时间之后,自动删除key

——设置key过期时间,以毫秒计,时间戳的形式

Linux系统

如图,以毫秒为单位,时间转换成时间戳:1639116950000

Linux系统

如图所示,时间一到,key自动删除

——跟Linux中命令类似,查找key中符合条件的key

Linux系统

如图所示,查找以test开头的所有key,用到 keys  test*    注意是:keys  不是key

——查看redis中所有key

Linux系统

 命令:keys  *

——移动当前db中key到其他db中

1,比如db0中有test2,db1中没有test2           #移动的话,后面直接输入1,就表示移动到db1

Linux系统

如图所示,test2从db0,移动到了db1      move移动成功,返回1

2、当db不存在时,move移动失败,返回0

Linux系统

3、当db0和db1存在名字一样的key时,move失败

Linux系统

 如图所示,db0和db1中均有name为test2的key,move移动失败,返回0

——以秒为单位,返回key剩余的过期时间(几秒后,key过期)

Linux系统

 如图所示,设置test2 10秒后过期,ttl查看剩余过期时间,返回 -1表示key存在,但是没有设置过期时间;返回-2表示key不存在,已经到期key自动删除,或者key本来就不存在;返回正整数表示剩余多少秒的生存时间

——以毫秒为单位,返回key剩余的过期时间

Linux系统

如ttl类似,返回 -1表示key存在,但是没有设置过期时间;返回-2表示key已到期自动删除,或者key本来就不存在;返回正整数,表示具体剩余的毫秒数

——移除key设置的过期时间,使key永久生效

Linux系统

如图,先给test设置过期时间,然后persist 命令移除过期时间后,ttl查看test显示-1,key存在,但是没有设置过期时间

——从当前db中随机返回一个key,当db不为空时,随机返回一个key,当db为空时,返回nil,(Windows系统返回null)

Linux系统

——key重命名

1、key存在,且newkey不存在

Linux系统

2、key不存在时

Linux系统

3、key存在,且newkey存在,则重命名会覆盖原有的newkey

Linux系统

如图所示,test,test1两个key均存在,rename  test为test1

——重命名key,且仅当newkey名不存在时,改命令可用:

Linux系统

如图所示,当newkey不存在时,重命名成功;当newkey存在时,返回0,未重命名成功

——Redis查看有多少个DB:

两种方法:

方法一:通过Redis配置文件查看

猫 /etc/redis/redis.conf

Linux系统

方法二:通过登录redis,命令查看

[root@localhost bin]#  redis-cli  -a  “密码”    ##登录redis

127.0.0.1:6379> 配置获取数据库

1)“数据库”

2)“16”

可以看到上边,通过命令查看,可以看到有16个DB

链接:https://blog.51cto.com/u_14175560/8983106








审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分