Redis的常用命令

这篇具有很好参考价值的文章主要介绍了Redis的常用命令。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Redis的常用命令

操作key
  • keys * :查看当前库的所有key

  • exists key:判断某个key是否存在

  • type key:判断key是什么类型

  • del key:删除指定key的数据

  • unlink key:异步删除指定key(仅将keys从keyspace元数据中删除,真正的删除会在后续异步操作)

  • expire key 10:设置key过期时间为10s

  • ttl key:查看key还有多少s过期,-1代表永不过期,-2表示已过期

  • select db:切换到指定库

  • dbsize:查看当前库的key数量

  • flushdb:清空当前库

  • flushall:清空所有库

字符串类型:string
  • String是Redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value;
  • String类型是二进制安全的,意味着Redis的string可以包含任何数据。比如jpg图片或者序列化的对象
  • String类型是Redis最基本的数据类型,一个Redis中字符串value最多可以是512M
常用命令
  • 添加键值对

    set <key> <value>
    
  • 获取key对应的value

    get <key>
    
  • 将指定value追加到原value的末尾

    append <key> <value>
    
  • 获取value的长度

    strlen <key>
    
  • 只有当key不存在时对key进行添加

    setnx <key> <value>
    
  • 将 key 中储存的数字值增1,只能对数字值操作,如果为空,新增值为1

    incr <key>
    
  • 将 key 中储存的数字值减1,只能对数字值操作,如果为空,新增值为-1

    decr <key>
    
  • 将key中存储的数字值自定义步长增减

    incrby <key> <step>
    decrby <key> <step>
    
原子操作的概念
  • 所谓原子操作是指不会被线程调度机制打断的操作,这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切换到另一个线程)
  • 在单线程中, 能够在单条指令中完成的操作都可以认为是"原子操作",因为中断只能发生于指令之间
  • 在多线程中,不能被其它进程(线程)打断的操作就叫原子操作
  • Redis单命令的原子性主要得益于Redis的单线程
字符串批量操作命令
  • 同时为多个key设置值

    mset <key1> <value1> <key2> <value2> ...
    
  • 同时获取多个value

    mget <key1> <key2> ...
    
  • 同时设置多个value,且key不存在(原子性:有一个存在则都失败)

    msetnx <key1> <value1> <key2> <value2> ...
    
其他命令
  • 获取子串,从索引start到stop(左闭右闭)

    getrang <key> <start> <stop>
    
  • 从指定索引位置使用value覆盖子串

    setrang <key> <index> <value>
    
  • 设置键值对的同时设置过期时间(单位:s)

    setex <key> <time> <value>
    
  • 以旧换新(读取原始值,并进行写入)文章来源地址https://www.toymoban.com/news/detail-432591.html

    getset <key> <value>
    
字符串的数据结构
  • String的数据结构为简单动态字符串(Simple Dynamic String,缩写SDS)。是可以修改的字符串,内部结构实现上类似于Java的ArrayList,采用预分配冗余空间的方式来减少内存的频繁分配
  • 内部为当前字符串实际分配的空间capacity一般要高于实际字符串长度len。当字符串长度小于1M时,扩容都是加倍现有的空间,如果超过1M,扩容时一次只会多扩1M的空间。需要注意的是字符串最大长度为512M

到了这里,关于Redis的常用命令的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • docker 容器日志查看常用命令

    查看最新日志: 将 container_name_or_id 替换为容器的名称或容器ID。这将显示容器的最新日志输出。 实时查看日志: 使用 -f 参数,你可以实时跟踪容器的日志输出,类似于 tail -f 命令。 查看指定行数的日志: 使用 --tail 参数,可以指定查看的日志行数。将 number_of_lines 替换为你

    2024年02月05日
    浏览(37)
  • es查看集群状态常用命令

    1.查看集群数据的正确率 active_shards_percent_as_number这个值如果低于100说明集群数据正确性存在问题,集群状态为yellow或者red都会使这个值低于100 2.查看集群索引的状态

    2024年02月11日
    浏览(33)
  • linux下常用命令查看端口占用

    在linux使用过程中,有时候需要了解当前系统开放了哪些端口,并且还需要查看开放这些端口的具体进程和用户,可以使用netstat命令, netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息 语法 netstat [选项

    2024年02月04日
    浏览(30)
  • Ubuntu 中常用的查看日志命令

    要查看Ubuntu的日志,可以使用以下命令: 1. 查看系统日志: 2. 查看应用程序日志: 3. 查看登录日志: 4. 查看内核日志: 5. 查看系统启动日志: 您可以使用 tail 命令来查看最新的日志条目,例如: 这将显示最新的日志条目,并在新条目添加到日志文件时自动更新。

    2024年02月04日
    浏览(29)
  • Linux查看日志文件的常用命令

    1、查看文件最后1000行内容 tail -n 1000 filename 2、实时查看文件最后1000行内容,动态刷新 tailf -n 1000 filename tail -f -n 1000 filename 3、按照搜索日志 cat filename | grep \\\'\\\' 4、按照搜索并包含前(后)多少行 【(A前B后C前后)几行】 cat filename | grep \\\'\\\' -A 2 5、将查询

    2024年02月07日
    浏览(31)
  • Android 查看按键信息的常用命令详解

    如果需要适配系统按键或者查看按键信息,那么按键基本命令和查看基本命令里面的信息是关键基础。 本文一起学习看出一下按键基本命令和里面的关键信息。 除了\\\"dumpsys input\\\"这个命令不需要su/root权限,其他命令都是需要获取权限才能获得信息。 简单示例: 这里可以看到

    2024年02月03日
    浏览(29)
  • ElasticSearch常用查询命令查看基本信息

    查看es的集群状态 http://IP:9200/_cat/healthv 注: IP指es集群某个ip地址, v表示格式化输出 查看es集群节点列表 http://IP:9200/_cat/nodesv 查看es集群所有索引及数据大小 http://IP:9200/_cat/indicesv 查看单个索引结构信息 http://IP:9200/indexNamepretty=true 注: indexName是索引名字, pretty=true表示格式化输出

    2024年02月03日
    浏览(30)
  • Redis命令 - Hashes命令组常用命令

    设置 key 指定的哈希集中指定字段的值。 HSET key field value 返回值:1代表field是一个新的字段。0代表field已存在 如果 key 指定的哈希集不存在,会创建一个新的哈希集并与 key 关联。 如果字段在哈希集中存在,它将被重写。 创建一个type为hash类型的key叫myhash,其指定的哈希集中

    2024年01月20日
    浏览(34)
  • Redis命令 - Zsets命令组常用命令

    可排序的set,可以是有序的。set不是自动有序的。 Sorted set的使用场景与set类似,区别是set不是自动有序的,而sorted set可以通过用户额外提供一个优先级(socre)的参数来为成员排序,并且是插入有序的,即自动排序 使用场景:排行榜、按照用户投票和时间排序。例如班级有

    2024年01月18日
    浏览(35)
  • 【Redis】Redis配置以及常用命令

      关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录。   SQL 语句(标准数据查询语言)就是一种基于关系型数据库的语言,用于执行对关系型数据库中数据的检索和操作。   主流的关系型数据库包括 Oracle、MySQL、SQL Se

    2024年02月11日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包