返回顶部
分享到

redis-cli常用命令使用介绍

Redis 来源:互联网 作者:佚名 发布时间:2025-04-20 10:37:33 人浏览
摘要

1 redis-cli连接redis服务 1.1 无密码本地登录 1 2 3 4 5 redis-cli redis 127.0.0.1:6379 redis 127.0.0.1:6379 PING PONG 1.2 指定ip、端口、密码 1 redis-cli -h [ip] -p [port] -a [pwd] 1.3 指定ip、端口、密码并清理redis缓存 1

1 redis-cli连接redis服务

1.1 无密码本地登录

1

2

3

4

5

redis-cli

 

redis 127.0.0.1:6379>

redis 127.0.0.1:6379> PING

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

2

3

4

5

6

7

8

9

10

11

12

#!/bin/bash

Num=`seq 1 1000`

for i in ${Num};do

    redis-cli -h 127.0.0.1 set key-${i} value-${i}

done

echo "1000个key-value已经写入redis"

 

 

 

//脚本执行完后,可以查看

redis-cli

>>get key-100

补充:redis运维常用命令

查看redis版本信息

1

2

3

# 等同于/usr/local/redis/src/redis-server -v

[root@iZ8vbdcrmm49bxv7sirrv3Z ~]# /usr/local/redis/src/redis-server --version

Redis server v=5.0.3 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=c72a455fc0d699b

或者客户端输入:info server

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

127.0.0.1:6379> info server

# Server

redis_version:5.0.3

redis_git_sha1:00000000

redis_git_dirty:0

redis_build_id:c72a4523c0d699b

redis_mode:standalone

os:Linux 3.10.0-957.21.3.el7.x86_64 x86_64

arch_bits:64

multiplexing_api:epoll

atomicvar_api:atomic-builtin

gcc_version:4.8.5

process_id:2006

run_id:0e16bcb89d8eb05b95d2b127d4b98178e76c86fd

tcp_port:7501

uptime_in_seconds:6317102

uptime_in_days:73

hz:10

configured_hz:10

lru_clock:16174420

executable:/usr/local/redis/src/redis-server

config_file:/usr/local/redis/src/redis.conf

......

查看服务所有[部分]信息

使用info [section]查看

  • 查看所有信息

1

127.0.0.1:6379> info

  • 查看具体信息

1

2

3

4

服务器信息

127.0.0.1:6379> info server

持久化信息

127.0.0.1:6379> info persistence

2 redis库相关命令

1

2

3

4

5

6

7

8

9

10

11

12

13

14

切换到1号库;redis有16个初始化库,编号0到15,默认使用0号库

select 1

 

如果需要验证

auth [password]

 

查看当前库的key的数量

dbsize

 

删除当前库的全部数据

flushdb

 

删除所有库的全部数据

flushall

3 redis key相关命令

对key有操作的命令,统一返回值都是1或者0,成功为1,失败为0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

查看当前库的全部key

keys *

 

判断某个key是否存在,存在返回1,不存在返回0

exists [key]

 

查看某个key的类型,如果key不存在,则返回none

type [key]

 

删除指定的key数据,成功返回1,失败返回0

del [key]

 

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

unlink [key]

 

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

ttl [key]

 

给指定的key设置过期时间,单位(秒)

expire [key] 10

4 redis 字符串相关命令

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

5 redis 列表相关命令

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

6 redis 集合相关命令

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

7 redis 哈希相关命令

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

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

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

版权声明 : 本文内容来源于互联网或用户自行发布贡献,该文观点仅代表原作者本人。本站仅提供信息存储空间服务和不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权, 违法违规的内容, 请发送邮件至2530232025#qq.cn(#换@)举报,一经查实,本站将立刻删除。
原文链接 :
相关文章
  • React实现组件之间通信的几种常用方法
    React 中如何实现组件之间的通信? 1. Props 传递 最直接的通信方式是通过 props 将数据从父组件传递给子组件。父组件通过属性将数据传递给
  • redis-cli常用命令使用介绍
    1 redis-cli连接redis服务 1.1 无密码本地登录 1 2 3 4 5 redis-cli redis 127.0.0.1:6379 redis 127.0.0.1:6379 PING PONG 1.2 指定ip、端口、密码 1 redis-cli -h [ip] -p
  • K8s部署Redis主从集群的教程

    K8s部署Redis主从集群的教程
    一、环境准备 1.1 环境说明 本文搭建MongoDB,基于WMware虚拟机,操作系统CentOS 8,且已经基于Kubeadm搭好了k8s集群,k8s节点信息如下: 服务器
  • Redis连接池配置方式

    Redis连接池配置方式
    连接池配置 一、Redis连接池 与JDBC中在与数据库进行连接时耗时,从而需要引入连接池一样。 Java在与Redis进行连接也是需要时间的。所以在
  • 通过docker和docker-compose安装redis两种方式

    通过docker和docker-compose安装redis两种方式
    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 的 NoSQL 数据库,并提供多种语言的 API。这里介
  • Linux环境下升级redis的详细步骤介绍

    Linux环境下升级redis的详细步骤介绍
    一、摘要 最近漏洞扫描服务器发现,Redis 缓冲区溢出漏洞(CVE-2024-31449),解决办法redis更新到6.2.16、7.2.6或7.4.1及以上版本。 二、漏洞描述 漏
  • Redis实现限量优惠券的秒杀功能

    Redis实现限量优惠券的秒杀功能
    核心:避免超卖问题,保证一人一单 业务逻辑 代码步骤分析 全部代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
  • redis缓存预热的实现介绍
    一、缓存预热的必要性 在一个高并发的系统中,如果缓存刚启动时是空的,所有的请求都会直接打到数据库,这可能会导致以下问题: 高延
  • Redis哈希槽的介绍
    1. 什么是 Redis 哈希槽? Redis Cluster 是 Redis 的分布式架构,它将数据分布在多个 Redis 实例(节点)上。为了实现数据分片,Redis Cluster 使用了
  • mysql中窗口函数lag()用法介绍
    在MySQL中,窗口函数LAG()可以用来访问当前行的前一行或多行的数据。这个函数通常用于分析时间序列数据,比如计算相邻行之间的差异或者
  • 本站所有内容来源于互联网或用户自行发布,本站仅提供信息存储空间服务,不拥有版权,不承担法律责任。如有侵犯您的权益,请您联系站长处理!
  • Copyright © 2017-2022 F11.CN All Rights Reserved. F11站长开发者网 版权所有 | 苏ICP备2022031554号-1 | 51LA统计