0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

linux下Redis常用命令使用

马哥Linux运维 来源:51CTO 2023-12-27 09:56 次阅读

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

cff53304-a3d8-11ee-8b88-92fbcf53809c.jpg

d008e93a-a3d8-11ee-8b88-92fbcf53809c.jpg

选择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

d01c5d1c-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d0300cf4-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

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

命令:> dump keyname

d037bbf2-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d03f7392-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d04f2a3a-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d062197e-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d074b1d8-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d084c230-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d09e142e-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d0b0f634-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d0c043d2-a3d8-11ee-8b88-92fbcf53809c.jpg

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

——查看redis中所有key

d0d3c754-a3d8-11ee-8b88-92fbcf53809c.jpg

命令:keys *

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

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

d0e83630-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d0fe82a0-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d1059d9c-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d121bdba-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d137a922-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d1490a46-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d1636c9c-a3d8-11ee-8b88-92fbcf53809c.jpg

——key重命名

1、key存在,且newkey不存在

d16dd7fe-a3d8-11ee-8b88-92fbcf53809c.jpg

2、key不存在时

d17fce0a-a3d8-11ee-8b88-92fbcf53809c.jpg

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

d18f652c-a3d8-11ee-8b88-92fbcf53809c.jpg

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

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

d1a0243e-a3d8-11ee-8b88-92fbcf53809c.jpg

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

——Redis查看有多少个DB:

两种方法:

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

猫 /etc/redis/redis.conf

d1b92a06-a3d8-11ee-8b88-92fbcf53809c.jpg

方法二:通过登录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








审核编辑:刘清

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

    关注

    4

    文章

    567

    浏览量

    26923
  • Redis
    +关注

    关注

    0

    文章

    363

    浏览量

    10496

原文标题:linux下Redis常用命令

文章出处:【微信号:magedu-Linux,微信公众号:马哥Linux运维】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Linux常用命令总结

    不少Linux运维初级同学,一到面试环节,就会在基础上掉链子,比如一些简单的命令都会不知道,今天浩道跟大家分享这篇硬核干货,可以帮助大家几分钟回顾掌握Linux常用命令!!!
    发表于 09-04 17:14 333次阅读

    linux常用命令

    linux常用命令
    发表于 08-20 22:53

    Linux常用命令

    Linux常用命令
    发表于 05-08 14:39

    Redis常用命令有哪些

    Redis常用命令
    发表于 06-05 15:55

    掌握Linux常用命令

    一、实验目的和要求1掌握Linux常用命令2学会如何获取命令帮助信息3熟练掌握Linux常用命令4掌握GCC
    发表于 12-16 06:08

    Linux常用命令全集

    Linux常用命令全集.rar  date 功能说明:显示或设置系统时间与日期。 语  法:date [-d ][-u][+%H%I%K%l%M%P%r%s%S%T%X%Z%a%A%b%B%c%d%D%j%m%U%w%x%y%Y%n%t] 或
    发表于 03-10 13:42 45次下载

    嵌入式Linux常用命令

    嵌入式Linux常用命令,比较基础,非常实用,适合新手学习。
    发表于 11-24 15:22 2次下载

    Linux终端常用命令大全

    Linux终端常用命令大全,通俗易懂,容易上手。包含所有命令,方便查找各个指令功能。
    发表于 04-28 16:30 15次下载

    vim常用命令

    vim常用命令
    发表于 01-08 15:59 3次下载

    redis常用命令总结

    本文是对redis常用命令总结。
    发表于 02-09 11:25 1443次阅读

    Linux教程之Linux常用命令大全

    Linux教程之Linux常用命令大全
    的头像 发表于 03-30 10:34 5407次阅读

    linux常用命令手册

    linux常用命令手册免费下载。
    发表于 06-01 14:59 62次下载

    linux常用命令大全

    linux常用命令大全,一些常用命令都可以找到
    发表于 03-03 09:20 0次下载

    Linux常用命令

    Linux常用命令
    的头像 发表于 01-12 11:19 875次阅读

    Linux常用命令手册分享

    linux常用命令合集
    发表于 04-26 11:46 1次下载