【REDIS】linux连接redis-cli操作redis

本文详细介绍了如何使用Redis客户端redis-cli连接服务器,以及包括string、hash、list、set和有序集合在内的常用命令及其操作方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


一、连接redis客户端redis-cli

  1. 进入 redis 的 bin 目录,找到 redis-cli,输入命令 ./redis-cli 建立连接;
  2. 输入命令 auth [pwd] 进入 redis 客户端。

二、前置命令

  • select [db]:切换 redis 库
  • exit/quit:退出 redis 命令
  • keys * :显示 redis 库中的所有的 key
  • exists [key…]:库中是否存在 key
  • type [key]:查询 key 的数据类型
  • del [key]:删除指定 key

三、常用命令

1、string类型

  • set [key] [value]:添加数据
  • get [key]:获取 key 的值,返回 value
  • incr [key]:自增命令,不存在 key 时,自动设置一个数值为 ‘1’ 的值,存在且为数值的字符串则自动加1。
  • decr [key]:自减命令 ,存在数值类型则减去1,不存在则设置值为 ‘-1’。
  • append [key] [value]:在 key 的值后面拼接 value
  • strlen [key]:返回 key 值的长度

2、hash(哈希)类型

  • hset [key] [field] [value]:添加 hash 类型数据,如果 key 不存在,添加新 key。若 field 不存在,添加成功返回1,存在,原有的值被覆盖(替换),返回0。
  • hget [key] [field] :获取 key 的 field 的值
  • hmset [key] [field value] …:添加 key 的多个 field 的值
  • hmget [key] [field1 field2 …]:获取 key 的多个 field 的值
  • hmgetall [key] :获取 key 的所有的 field 的值
  • hdel [key] [field1 field2 …]:删除 key 的多个 field
  • hkeys [key]:获取 key 的所有 field
  • hvals [key]:获取所有 key 的值
  • hexists [key] [field]:是否存在 key 的 field,存在返回1,不存在返回0。

3、list类型

  • lpush [key] [value1 value2 …] :从左边一次加入一个或多个值,返回列表长度。
  • rpush [key] [value1 value2 …] :从右边一次加入一个或多个值,返回列表长度。
  • lrange [key] [start] [stop] :获取 key 的索引 start 到 stop 的值
  • lindex [key] [index] :获取 key 的索引为 index 的值,不存在索引返回 nil。
  • llen [key] :返回 key 的列表长度
  • lram [key] [count] [value] :count > 0 从列表左侧开始删除 value,count < 0 从右侧删除,删除个数为count,返回删除个数。
  • linsert [key] before|after [pivot] [value] :将 value 插入到 key 中元素 pivot 之前|之后。返回 key 的长度。没有 pivot 返回-1,没有 key 返回0。
  • lset [key] [index] [value] :将 key 的下标为 index 的值设为 value
  • lpop [key] :从左侧弹出 key 中最左侧的值
  • rpop [key] : 从右侧弹出 key 中最右侧的值

4、set 集合类型

  • sadd [key] [member…] :向 key 中添加多个成员,返回添加成员的个数,添加重复的成员,视作无添加,不计成员个数。
  • smember [key] :获取 key 的所有成员
  • sismember [key] [member] :判断 key 中是否存在成员 member,存在返回1,否则返回0。
  • scard [key] :获取 key 的长度
  • srem [key] [member1 member2 …] :删除 key中 成员,返回删除个数,不存在忽略。
  • srandmemer [key] [count] :随机的获取 key 中 count 个成员,返回成员。
  • spop [key] [count] : 随机的删除 key 中 count 个成员,返回被删除的成员。

5、有序集合 zeset

  • zadd [key] [score1 member1] [score2 member2] … :新增 key 中一个或者多个 score 与 member
  • zrange [key] [start] [stop] withscores : 查询有序集合 key 从 start 到 stop 索引的成员 member,返回结果按照 score 进行排序,withscores 显示 score,0标识第一个元素,1是第二个,-1是最后一个。
  • zrevrange [key] [sart] [stop] withscores :score 从大到小查询 key 的成员 member,0标识第一个,-1最后一个。
  • zrem [key] [member] :删除 key 的成员
  • zcard [key] :查询有序集合 key 的大小(成员个数)
  • zrangebyscore [key] min max [withscore] [limit offset count] :查询 score 介于 min 与 max 之间的成员,limit 可做分页查询,从下标 offset 开始 count 个有序集合 key 的成员。
  • zrevrangebyscore [key] max min [withscore] [limit offset count] :从大到小反序查找
  • zcount [key] min max :查询 score 介于 min 与 max 之间的个数
### 如何在 Linux 系统中使用 `redis-cli` 操作 Redis #### 安装 `redis-cli` 为了能够在 Linux 中使用 `redis-cli` 工具,首先需要确保该工具已正确安装。如果遇到命令未找到的情况,则可能是因为环境变量 PATH 中缺少路径或者软件包尚未安装。 对于基于 Red Hat 的发行版,可以按照如下方式获取并配置 EPEL 源: ```bash wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo yum install epel-release -y yum install redis -y ``` 上述命令会下载阿里云提供的 EPEL 配置文件,并通过 yum 来安装 Redis 及其客户端工具集[^3]。 #### 连接到本地或远程服务器 一旦确认 `redis-cli` 成功安装,在终端输入 `redis-cli` 即可启动默认连接至本机运行的服务实例;而针对远端主机上的 Redis 实例,需指定相应的 IP 地址、端口号以及认证密码来建立安全链接: ```bash redis-cli.exe -p port -a password ``` 这里 `-h`, `-p`, 和 `-a` 参数分别用于定义目标机器地址、监听端口和服务器访问令牌[^1]。 #### 使用 Lua 脚本执行复杂逻辑 除了基本的数据读写外,还可以利用内置的支持功能编写高效的批处理任务或是实现更复杂的业务流程控制。例如下面这段简单的例子展示了怎样加载一段 Lua 代码到解释器环境中去求解斐波那契数列第 n 项的值: ```lua EVAL "local a,b=0,1;for i=2,(ARGV[1]) do a,b=b,a+b end return a" 0 10 ``` 此语句中的 EVAL 命令允许用户传递任意长度的字符串作为脚本文档传入给定数量键名之后跟随额外参数列表 ARGV[]. #### 查看帮助文档 当不确定具体选项含义时,可以通过附加 help 关键字调阅完整的在线指南页面获得更多信息支持: ```bash redis-cli -help ``` 这将显示所有可用的操作符及其描述说明,有助于加深理解各个特性背后的原理机制[^2].
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

砍光二叉树

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值