• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    redis-cli常用命令使用详解

    发布者: 山止川行 | 发布时间: 2025-6-19 12:33| 查看数: 133| 评论数: 0|帖子模式

    1 redis-cli连接redis服务

    1.1 无密码本地登录
    1. redis-cli

    2. redis 127.0.0.1:6379>
    3. redis 127.0.0.1:6379> PING
    4. PONG
    复制代码
    1.2 指定ip、端口、密码
    1. redis-cli -h [ip] -p [port] -a [pwd]
    复制代码
    1.3 指定ip、端口、密码并清理redis缓存
    1. redis-cli -h [ip] -p [port] -a [pwd] flushall
    复制代码
    1.4 指定ip、端口、密码、数据库
    1. redis-cli -h [ip] -p [port] -a [pwd] -n [db_number]
    复制代码
    1.5 shell连接redis
    1. #!/bin/bash
    2. Num=`seq 1 1000`
    3. for i in ${Num};do
    4.         redis-cli -h 127.0.0.1 set key-${i} value-${i}
    5. done
    6. echo "1000个key-value已经写入redis"



    7. //脚本执行完后,可以查看
    8. redis-cli
    9. >>get key-100
    复制代码
    补充:redis运维常用命令


    查看redis版本信息
    1. # 等同于/usr/local/redis/src/redis-server -v
    2. [root@iZ8vbdcrmm49bxv7sirrv3Z ~]# /usr/local/redis/src/redis-server --version
    3. Redis server v=5.0.3 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=c72a455fc0d699b
    复制代码
    或者客户端输入:info server
    1. 127.0.0.1:6379> info server
    2. # Server
    3. redis_version:5.0.3
    4. redis_git_sha1:00000000
    5. redis_git_dirty:0
    6. redis_build_id:c72a4523c0d699b
    7. redis_mode:standalone
    8. os:Linux 3.10.0-957.21.3.el7.x86_64 x86_64
    9. arch_bits:64
    10. multiplexing_api:epoll
    11. atomicvar_api:atomic-builtin
    12. gcc_version:4.8.5
    13. process_id:2006
    14. run_id:0e16bcb89d8eb05b95d2b127d4b98178e76c86fd
    15. tcp_port:7501
    16. uptime_in_seconds:6317102
    17. uptime_in_days:73
    18. hz:10
    19. configured_hz:10
    20. lru_clock:16174420
    21. executable:/usr/local/redis/src/redis-server
    22. config_file:/usr/local/redis/src/redis.conf
    23. ......
    复制代码
    查看服务所有[部分]信息

    使用
    1. info [section]
    复制代码
    查看

    • 查看所有信息
    1. 127.0.0.1:6379> info
    复制代码

    • 查看具体信息
    1. 服务器信息127.0.0.1:6379> info server持久化信息127.0.0.1:6379> info persistence
    复制代码
    2 redis库相关命令
    1. 切换到1号库;redis有16个初始化库,编号0到15,默认使用0号库
    2. select 1

    3. 如果需要验证
    4. auth [password]

    5. 查看当前库的key的数量
    6. dbsize

    7. 删除当前库的全部数据
    8. flushdb

    9. 删除所有库的全部数据
    10. flushall
    复制代码
    3 redis key相关命令

    对key有操作的命令,统一返回值都是1或者0,成功为1,失败为0
    1. 查看当前库的全部key
    2. keys *

    3. 判断某个key是否存在,存在返回1,不存在返回0
    4. exists [key]

    5. 查看某个key的类型,如果key不存在,则返回none
    6. type [key]

    7. 删除指定的key数据,成功返回1,失败返回0
    8. del [key]

    9. 根据value选择非阻塞删除,仅将keys从keyspace元数据中删除,真正的删除后在后续异步操作
    10. unlink [key]

    11. 查看某个key的过期时间,单位(秒),-1表示永不过期,-2表示已经过期
    12. ttl [key]

    13. 给指定的key设置过期时间,单位(秒)
    14. expire [key] 10
    复制代码
    4 redis 字符串相关命令


      1. set <key> <value>
      复制代码
      :添加一条数据 例如set k1 v1,添加key为k1,值为v1的数据
      1. get <key>
      复制代码
      :得到某个key的数据,例如get k1,得到key为k1的值
      1. append <key> <value>
      复制代码
      :将给定的value,追加到某key的原值的末尾,返回追加后的字符长度
      1. strlen <key>
      复制代码
      :查询某key的值的长度
      1. setnx <key> <value>
      复制代码
      :当key不存在的时候,才能添加成功,当key存在的时候,不能添加
      1. incr <key>
      复制代码
      :将某个key的值,数字增加1,仅仅对数字起作用,如果为空,新增值为1
      1. decr <key>
      复制代码
      :将某个key的值,数字减少1,仅仅对数字起作用,如果为空,新增值为-1
      1. incrby/decrby <key> <步长>
      复制代码
      :将key中储存的数字值增减,自定义步长
      1. mset <key1> <value1> <key2> <value2>
      复制代码
      :批量添加
      1. mget <key1> <key2>
      复制代码
      :批量取值
      1. msetnx <key1> <value1> <key2> <value2>
      复制代码
      :批量添加,当且仅当所有的key都不存在(因为原子性,一个失败则都失败)
      1. getrange <key> <起始位置> <结束位置>
      复制代码
      :获取某个key值的范围,getrange k1 0 2,包含0位置的元素,和2位置的元素
      1. setex <key> <过期时间> <value>
      复制代码
      :设置键值的同时设置过期时间(单位秒)
      1. getset <key> <value>
      复制代码
      :设置新值,并返回旧值

    5 redis 列表相关命令


      1. lpush/rpush <key> <value1> <value2> <value3>
      复制代码
      :从左边,或者右边添加数据
      1. lpop/rpop <key>
      复制代码
      :从左边,或者右边取出一个值,列表里这个值就不存在了
      1. rpoplpush <key1> <key2>
      复制代码
      :从key1的右边取一个值,添加在key2的左边
      1. lrange  <key> <起始位置> <结束位置>
      复制代码
      :按照索引下角标得到元素(从左往右),当结束为值为-1时,代表得到多有,这个值还在列表中
      1. lindex <key> <index>
      复制代码
      :按照索引,从左往右获得对应的值
      1. llen <key>
      复制代码
      :获得列表长度
      1. linsert <key> before/after <value> <newVlaue>
      复制代码
      : 在某个key下的某个值的前面/后面添加一个新的值
      1. lrem <key> <n> <value>
      复制代码
      :删除某个key下,删除n个值为value的数据
      1. lset <key> <index> <value>
      复制代码
      :将某个key下的某个下角标的值换成给定的值

    6 redis 集合相关命令


      1. sadd <key> <value1> <value2> <value3>
      复制代码
      :添加数据,如果值已经存在,忽略该值
      1. smembers <key>
      复制代码
      :得到集合中所有的值
      1. sismember <key> <value>
      复制代码
      :判断某个key中是否存在value,存在返回1,不存在返回0 scard  <key>:返回集合的元素个数
      1. srem <key> <value1> <value2>
      复制代码
      :删除某个key中的某些元素
      1. spop <key>
      复制代码
      :从key中随机取出一个值,如果值没了,那么key就不在了
      1. srandmember <key> <n>
      复制代码
      :从某个key中,取出n个值,不会从集合中删除
      1. smove <key1>  <key2> <value>
      复制代码
      :把集合中的一个值移动到另一个集合
      1. sinter <key1>  <key2>
      复制代码
      :取两个集合的交集
      1. sunion <key1>  <key2>
      复制代码
      :取两个集合的并集
      1. sdiff <key1>  <key2>
      复制代码
      :取两个集合的差集(在key1中的,不在key2中的)

    7 redis 哈希相关命令


      1. hset  <key> <field> <value>
      复制代码
      :给某个key哈希表中的field键复制为value
      1. hget <key> <field>
      复制代码
      :得到某个key哈希表中某个field的值
      1. hmset <key> <field1> <value1> <field2> <value2>
      复制代码
      :批量加数据
      1. hexists <key> <field1>
      复制代码
      :某个key哈希表中某个field是否存在
      1. hkeys <key>
      复制代码
      :查看某个key哈希表中的全部field
      1. hvals <key>
      复制代码
      :查看某个key哈希表中的全部value
      1. hincrby  <key> <field> <increment>
      复制代码
      :为某个key的哈希表中的某个field键的值加上响应的增量
      1. hsetnx  <key> <field> <value>
      复制代码
      :某个key哈希表中的field键复制为value,当且仅当key不存在的时候成功

    8 redis 有序集合(Zset)相关命令


      1. zadd  <key> <score1> <value1><score2> <value2>
      复制代码
      :添加以一个过着多个元素,score为评分,集合按照从低到高及进行排序,评分可以重复
      1. zrange <key> <start> <end> \[withscores\]
      复制代码
      :查一定范围的元素,end为-1时,查询所有,withscores加上他,连着评分一起查出
      1. zrangebyscore <key> <min> <max> \[withscores\]
      复制代码
      :查询score评分在某个范围内的数据,从小到大排序
      1. zrevrangebyscore  <key> <max> <min> \[withscores\]
      复制代码
      :查询score评分在某个范围内的数据,从大到小排序
      1. zincrby  <key> <increment> <value>
      复制代码
      :为元素的score加上指定的增量
      1. zrem <key> <value>
      复制代码
      :删除数据
      1. zcount <key> <min> <max>
      复制代码
      :统计score评分在某个范围内的数据的数量
      1. zrank  <key> <value>
      复制代码
      :返回集合中的排序,排序从0开始

    总结

    以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

    来源:https://www.jb51.net/database/339939uzj.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表