redis的基本命令
我是用的是docker的redis 6版本的镜像,然后运行容器,进去后,可以直接使用命令:redis-cli 打开客户端,也可以进入到/usr/local/bin/目录下,执行命令./redis-cli 打开客户端,两种方法都是可行的,退出客户端执行命令exit,打开客户端后可以执行命令ping测试连接,如果返回pong则连接正常。
redis基本的知识:
redis有16个数据库,默认使用的是第一个数据库,比如可以用select 3 命令切换到第四个数据库,用 dbsize命令查看数据库的大小,清空当前数据库可以使用命令:flushdb,清空全部的数据库使用命令:flushall。 判断key是否存在 ,使用命令:exists keyname,会返回当前key的个数,move keyname 3,移动关键字到第四个数据库。 设置某个关键字多长时间后过期,可以使用命令:
expire keyname 10,表示该关键字10秒钟过期,即自动消失。移除当前的key,使用命令: del keyname。查看当前key的剩余时间,可以使用命令:ttl keyname,则返回相应的剩余时间,若为-2则已消失。查看当前key的数据类型,可以使用命令:type keyname。
redis的命令超多,以后遇到不会的就去官网查,https://redis.io/commands/
关于redis的数据持久化和配置问题,由于当前学习过程中还不需要,所以直接就是用的镜像,以后需要配置的话可以参考这两篇博客:
http://imyhq.com/cloud-native/6807.html
https://www.cnblogs.com/lanrenka/articles/15904978.html
string字符串类型:
set:设置值;
get:获取值;
keys *:获取全部的key;
exists key1:判断某一个key是否存在;
append:给某一个key追加字符串;
strlen:获取某个key字符串的长度;
incr:使数字字符串自增1;
decr:使数字字符串自减1;
incrby:指定步长增加;
decrby:指定步长减少;
getrange:截取字符串;
setrange:替换指定位置开始的字符串;
setex:设置key的值并同时设置key的过期时间;
setnx:当前key不存在的话才可以设置;
mset:同时设置多个值;
mget:同时获取多个值;
getset:先获取key的值再设置key的值;
List列表类型:
lpush:将一个值或多个值插入列表左边;
rpush:将一个值或多个值插入列表右边;
lrange:获取list中的部分值;
lpop:移除列表的左边的第一个元素;
rpop:移除列表的右边的第一个元素;
lindex:通过列表的下标获取到值;
llen:返回列表的长度;
lrem:移除list中指定个数的value;
ltrim:根据列表下标截取指定的长度;
rpoplpush:移除当前列表的最右边的元素将它移动到新的列表中;
exists:判断该列表是否存在;
lset:将列表中指定下标的值替换成另一个值;
linsert:将元素插入到列表中指定元素的前面或者后面;
set集合:(元素不重复)
sadd:集合中添加元素;
smembers:查看set的所有元素;
sismember:判断某个值是否在集合中;
scard:获取集合中元素的个数;
srem:移除集合中的指定元素;
srandmember:随机取一个元素;
spop:随机移除一个元素;
smove:移动指定元素到另一个集合;
sdiff:两个集合中的差集(不同的元素);
sinter:两个集合中交集(共同的元素);
sunion:两个集合中的并集(合并);
map集合:
hset:设置一个字段值;
hget:获取一个字段值;
hmset:设置多个key-value;
hmget:获取多个字段值;
hgetall:获取全部的数据;
hdel:删除指定的key字段;
hlen:获取hash表的字段数量;
hexists:判断指定元素是否存在;
hkeys:获取所有的元素;
hvals:获取所有的值;
hincrby:指定元素自增;
hsetnx:元素不存在才可以设置值,否则不可以;
zset有序集合:
zadd:集合中添加值;
zrangebyscore:排序,从小到大;
zrem:移除元素
zrange:获取部分值;
zcard:获取有序集合中的个数;
zrevrange:排序,从大到小;
zcount:获取指定区间内的元素数量;
三种特殊数据类型:
geospatial地理位置:
geoadd:将指定位置空间添加到key中;
geopos:获取指定key的经纬度;
geodist:查看两个城市之间的直线距离;
georadius:以某点为中心,查找指定半径内的所有元素;
georadiusbymember:找出位于指定元素周围的其它元素;
geohash:将经纬度转化成字符串;
hyperloglog基数统计:
pfadd:创建一组元素;
pfcount:统计基数数量;
pfmerge:合并两组元素的基数数量(并集);
bitmap位图场景:
setbit:设置值;
getbit:获取值;
bitcount:统计值;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?