ASP.NET Core微服务(六)——【redis命令详细列表1】

举报
红目香薰 发表于 2022/10/28 00:19:33 2022/10/28
【摘要】 ​ ​编辑ASP.NET Core微服务(六)——【redis操作详细列表1】目录ASP.NET Core微服务(六)——【redis操作详细列表1】Win10 redis测试环境redis linux测试环境Redis基础信息redis选择数据库语法基础命令设置字符串保存时间——单位秒查看key类型修改key删除key查询所有keyexists判断key是否存在于数据库中move移动指定的...

 编辑

ASP.NET Core微服务(六)——【redis操作详细列表1】


目录

ASP.NET Core微服务(六)——【redis操作详细列表1】

Win10 redis测试环境

redis linux测试环境

Redis基础信息

redis选择数据库语法

基础命令

设置字符串保存时间——单位秒

查看key类型

修改key

删除key

查询所有key

exists判断key是否存在于数据库中

move移动指定的key到指定的数据库

incrby自增与decrby自减

当key不存在的时候添加值




Win10 redis测试环境

系统环境:Win10专业版

Redis版本:Redis-x64-3.2.100

编辑

服务是【redis-server.exe】,客户端是【redis-cli.exe】 ,想操作redis服务需要一直启动着。

编辑

Redis工具:redisdesktopmanager

编辑


使用方法,在Redis服务启动的情况下,点开后连接redis服务,输入Name与Adress与port点击OK即可连接。 

编辑

redis linux测试环境

linux安装redis(保姆级-安装包方式安装-版本6.2.7-解决aof持久化问题)_红目香薰的博客-CSDN博客

Redis基础信息

redis的默认库有16个,通过【select】命令可以选择对应的数据库,如果没有选择,则在redis-cli中默认使用db0的数据库。我们可以在以下的Redis Desktop工具中看到对应的16个db库。

redis选择数据库语法

编辑

编辑

基础命令

字符串读写操作

使用set命令写入数据:    set 键 值

使用get命令写入数据:    get 键

编辑

set userName admin
get userName

这是最基本的字符串操作。Redis的命名规范与常规的命名规范相同,但是Redis支持文件夹分层,可以使用英文的:冒号来做层级区分:

编辑

实际看到的效果是:

编辑

这样可以通过视图的方式快速查看我们需要的key,毕竟有的时候不方便得用手机操作,手机远程控制电脑点点点还行,要是输入一堆。。。根本无法想象。

设置字符串保存时间——单位秒

语法

expire key seconds

使用

set userName admin
expire userName 120
ttl userName

这里的ttl是查看对应的key剩余生存时间。

编辑

查看key类型

语法

type key

使用

type userName
set num1 666
type num1

只要是set那么一定是写入的字符串类型:

编辑

修改key

修改key依然使用的是set,直接修改即可。

编辑

删除key

语法

del key

使用

del num1
get num1

删除后就无法进行查询了,查到的是nil,nil代表0,也就是没有的意思。编辑

查询所有key

keys *

可以遍历当前库的所有的key:

编辑

通配符:*(匹配0到多个字符),?(匹配一个字符),[](匹配括号中的一个字符) 


编辑

exists判断key是否存在于数据库中

exists girlName
exists userName

返回0代表没有,如果返回1则代表有1个。

编辑

move移动指定的key到指定的数据库

将我们刚才创建的userName放置到db2中

move userName 2

select 2

get userName

select 0

get userName

可以在实例中看到效果: 

编辑

incrby自增与decrby自减

自增自减用法相同,如果不使用by的话每次操作单位都是1,如果使用by的话是可以设置步长的。

语法

incr key 
incry key number

示例

incr num1
get num1
incr num1
get num1

编辑

跨越步长

incrby num1 5
get num1

这回能看到,步长是5,但是如果继续incr那么依然长度是1

incrby num1 5
get num1
incr num1
get num1

编辑

当key不存在的时候添加值

这个还是非常好用的,就像一般的时候我们把用户登录的token放在Redis中,如果用户没有登出过那就代表有账号登录,判断是否强行登录即可。

语法

setnx key value


使用

set userName 666
setnx userName 777
get userName

可以看得出效果很明显 

编辑


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。