Redis入门与应用(2)

Redis操作与全局命令详解

连接和操作Redis服务

Redis服务启动完成后,可以使用redis-cli工具连接并操作Redis服务。redis-cli提供两种连接Redis服务器的方式:

1. 单次操作

通过redis-cli的单次操作模式,直接执行命令并得到结果。例如:

redis-cli -h {host} -p {port} {command}

这种方式每次操作都需要重新连接一次Redis。

单次操作示例

2. 命令行操作

通过redis-cli连接到Redis服务后,可以进入命令行模式,执行多条命令。例如:

redis-cli -h {host} -p {port}

连接后所有操作都可以在命令行模式下进行:

命令行操作示例

如果不指定-h参数,默认连接127.0.0.1;如果不指定-p参数,默认连接端口6379

命令行操作连接

停止Redis服务

可以通过shutdown命令来停止Redis服务。例如:

./redis-cli -p 6379 shutdown

执行该命令后,Redis服务端将会显示:

shutdown命令示例

注意事项

除了shutdown命令,还可以通过kill进程号的方式关闭Redis服务,但强烈不建议使用kill -9强制杀死Redis服务。这会导致数据不持久化且资源不能优雅释放,极端情况下可能会造成数据丢失。

可以在命令行中执行shutdown指令:

命令行shutdown

shutdown命令还有一个参数,代表是否在关闭Redis前生成持久化文件,缺省是save,如果是nosave则不生成持久化文件。

Redis全局命令

Redis支持的value类型包括了String、哈希表、列表、集合等,这使得Redis能够在实际业务场景中得到广泛的应用。

keys命令

keys命令用于查看所有键(支持通配符):

keys *
keys L*

keys命令示例

keys命令时间复杂度是O(n),当Redis保存大量键时会影响性能,线上环境禁止使用,推荐使用dbsize

dbsize命令

dbsize命令返回当前数据库中键的总数:

dbsize命令示例

dbsize命令时间复杂度是O(1)。

exists命令

检查键是否存在,存在返回1,不存在返回0。

exists命令示例

del命令

删除键,无论值是什么数据结构类型,del命令都可以将其删除。返回删除键个数,删除不存在键返回0,支持删除多个键。

del命令示例

del多个键

键过期命令

expire命令用于设置键的过期时间(单位:秒)。ttl命令返回键的剩余过期时间,有3种返回值:

  • 大于等于0的整数:键剩余的过期时间。
  • -1:键没设置过期时间。
  • -2:键不存在。

其他相关命令还有expireatpexpirepexpireatpttlpersist等。

注意事项

  1. 如果expire key的键不存在,返回结果为0。
  2. 如果过期时间为负值,键会立即被删除。
  3. persist命令可以清除键的过期时间。

expire命令示例

expire和set命令

Redis不支持二级数据结构(例如哈希、列表)内部元素的过期功能。

type命令

返回键的数据结构类型。例如:

type mykey

type命令示例

randomkey命令

随机返回一个键:

randomkey命令示例

rename命令

键重命名:

rename oldkey newkey

如果新键已经存在,值将被覆盖。为了防止被强行rename,可以使用renamenx命令,确保只有newKey不存在时候才被覆盖。

rename命令示例

renamenx命令示例

重命名键期间会执行del命令删除旧的键,如果键对应的值比较大,会存在阻塞Redis的可能性。

键名的生产实践

设计合理的键名有助于防止键冲突和项目的可维护性。推荐的方式是使用“业务名:对象名: id : [属性]”作为键名,例如:

mall:order:1
mall:order:1:name

如果当前Redis只被一个业务使用,可以简化键名。能描述键含义的前提下适当减少键的长度,从而减少内存浪费。

  • 28
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

搬砖的小熊猫

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

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

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

打赏作者

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

抵扣说明:

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

余额充值