redis的常用命令

5 篇文章 0 订阅
5 篇文章 0 订阅

Redis的常用命令

  • redis的数据类型

redis-共分 为五种基本数据类型: String、 Hash、 List、Set、 ZSet
1.String类型简单就是一个key对应一个value

  • 启动Redis的命令
指定一个conf文件就行
bin/redis-server start /opt/module/tools_redis/etc/redis.conf
查看是否启动成功 ps -ef | grep redis    
  • 启动Redis客户端命令
bin/redis-cli 

1、String字符串

  • 设置值&取值&删除值
    0代表false 1代表true
一:set key  vlaue 
	指定一个key 在给出value值
	多次设置会把 相同key的值覆盖掉
	get key 取值
	del key 删除值
	
二:setnx(not exist) key  value 
	如果不存在则设置,存在则返回0 
	
三: setex(expired) key 10 value
	10代表当前key的有效期 10秒后数据就自动删除  
	应用场景可以把数据放在redis缓存中,一段时间内就失效了。
	
四:setrange key 10  value  
	从字符串索引10的位置开始往后替换
	字符串替换
  • 批量设置值
一: mset key1 value key2 value key3 value
	批量设置值
	mget key1 key2 key3
	批量获取值
	
二: getset  key  value 
	先把key对应的value值 获取到,
	再重新设置key 的值为value

三: incr key   
	对key的值递增 
	
	incrby key  3  
	指定递增步长
	
	decr key
	对key的值递减
	
	decrby key 3
	指定递减步长
	
四: append key value 
	追加到key所对应的value的后面

五: strlen key 
	获取字符串的长度

2、Hash类型数据

一: Hash类型是String类型的field和value的映射表,或者说-一个String集合。 它的特别

二:适合存储对象,相比较而言,将-一个对 象类型存储在Hash类型里要比存储在String类型里占用更少的内存空间,并方便存取整个对象。

  • 如何设置 Hash
    举例比如有一张表
nameage
张三13
张四14
张五15
  • 设计一:
Hash名字叫user
那么Hash的key和value可以是
	key		value
	张三		13    
	张四		14
	张五		15	
	HashMap(key,value)
就可以实现以一个hash对应数据库中一条记录,这一条记录也就代表一个对象。
  • 设计二:
    倾向于json的方式

Hash名字叫user
然后可以把数据库中的一个主键,设置一个UUID来对应。
然后把一条记录打成一个json 
然后一个UUID对应一个 字符串。
	uuid  	json_string
	1		“张三,13"
	2		“张四,14"
	3		“张五,15"
	HashMap(uuid,json_string)
  • 两种设计的应用场景
假如只拿某条数据就用设计一
如果全部都需要用到就可以使用设计二

命令

一: hset myhash key value
	添加hash集合, myhash是集合名字
	key是字段名value为其值
	
	hget myhash key获取值,

二: hmset myhash key value key value
	同时设置多个key 和多个值
		
	hmget myhash key  key 
	同时获取多个值
	同样也有hsetnx,和setnx大同小异。
	
三: hincrby  Myhash  key 对值递增  
	hdecrby集合递增和递减。
四: hexists Myhash key value
	是否存在key如果存在返回不存在返回0
	
五:hlen返回hash集合里的所有的键数值

六:hdel删除指定hash的field

七:hkeys返回hash里所有的字段

八:hvals返回has h的所有value

九:hgetall返回hash里所有的key和value
不一一测试了 自己测试吧,就多了一个hash的名字

3、List数据类型

一、List类型是一个链表结构的集合,其主要功能有push、pop、获取元素等。更详细的说,List类型是-一个双端链表的结构,我们可以通过相关操作进行集合的头部或者尾部添加删除元素, 允许元素有重复。
二、list 的设计非常简单精巧,即可以做为栈,又可以作为队列。满足绝大多数需求。
三、相当于java中的 dequeue 可以操作头部也可以操作尾部

常用命令

一:lpush list_name value   先进后出
	list_name 是list的名字
	value 是list中的元素
	
	lrange list_name 0 -1
	从list获取元素,从0开始 到-1没有元素结束,

二:rpush list_name value 先进先出
		lrange list_name 0 -1 获取元素
		
三:linsert list_name  before value value2
	第一个value是集合中的 元素
	第二个value是要插入到集合中的元素 
	作用:把value2元素插入到value元素的前面,可以让value2先输出。
四:lset list_name  2 value
	将指定下标的元素替换掉
五: lrem list_name 2 
	删除指定下标的元素 并返回删除的个数
		

在这里插入图片描述

六:lpop list_name 方法:从list的 头部删除元素,并返回删除元素
七:rpop lsit_name 方法:从list的尾 部删除元素,并返回删除元素

应用场景

针对这两个方法的应用场景:有些小型企业就会采用Redis作为消息系统来消费数据,那么就可以采用 Rpush 来存储数据,再用这两个方法进行消费,消费完就会删除,(lpop,rpop)这两个方法会返回元素,所以可以低效率的代替kafka之类的消息系统
在这里插入图片描述

3、set与zset数据类型

  • set是无序的

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • zset是有序的
一:zadd zset_name 3 value 
	可以理解为 给3是value的索引
	获取元素
	zrange zset_name 0 -1 获取所有的value值
	zrange zset_name 0 -1 winthscres 获取所有的value值和index索引

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

HyperLogLog类型
bitMap类型
GeoHash类型
BloomFilter类型

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值