Ubuntu下使用Redis

it2022-05-09  33

1、安装 redis

sudo apt-get update sudo apt-get install redis-server 启动 : redis-server 开启客户端 :redis-cli 切换数据库select n 查看进程 ps -ef|grep redis 杀死redis服务器 sudo kill -9 pid

2、redis 数据结构

redis是key-value的数据结构,每条数据都是⼀个键值对 键的类型是字符串

值的类型分为五种: 字符串string 哈希hash 列表list 集合set 有序集合zset

3、string 类型

字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG图像数据或Json对象描述信息等。在Redis中字符串类型的Value最多可以容纳的数据长度是512M。

设置键值 set key value 设置键值及过期时间,以秒为单位 setex key seconds value 设置多个键值 mset key1 value1 key2 value2 追加值 append key value 获取:根据键获取值,如果不存在此键则返回nil get key 根据多个键获取多个值 mget key1 key2

4、hash 类型

⽤于存储对象,对象的结构为属性、值,值的类型为string

设置单个属性 hset key field value

设置多个属性 hmset key field1 value1 field2 value2 获取 获取指定键所有的属性 hkeys key 获取⼀个属性的值 hget key field 获取多个属性的值 hmget key field1 field2 获取所有属性的值 hvals key 删除整个hash键及值,使⽤del命令 删除属性,属性对应的值会被⼀起删除 hdel key field1 field2

5、list类型

列表的元素类型为string,按照插⼊顺序排序 在左侧插⼊数据 lpush key value1 value2 在右侧插⼊数据 rpush key value1 value2 在指定元素的前或后插⼊新元素 linsert key before或after 现有元素 新元素

获取元素 lrange key start stop start、stop为元素的下标索引 索引从左侧开始,第⼀个元素为0 索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素

设置指定索引位置的元素值 lset key index value 索引从左侧开始,第⼀个元素为0 索引可以是负数,表示尾部开始计数,如-1表示最后⼀个元素

删除 lrem key count value 列表中前count次出现的值为value的元素移除 count > 0: 从头往尾移除 count < 0: 从尾往头移除 count = 0: 移除所有

6、set 类型

⽆序集合 元素为string类型 元素具有唯⼀性,不重复 说明:对于集合没有修改操作

添加元素 sadd key member1 member2 返回所有的元素 smembers key 删除指定元素 srem key

7、zset 类型

sorted set,有序集合 元素为string类型 元素具有唯⼀性,不重复 每个元素都会关联⼀个double类型的score,表示权重,通过权重将元素从⼩到⼤排序 说明:没有修改操作

添加 zadd key score1 member1 score2 member2

获取 zrange key start stop 返回指定范围内的元素 start、stop为元素的下标索引 索引从左侧开始,第⼀个元素为0 索引可以是负数,表示从尾部开始计数,如-1表示最后⼀个元素

返回score值在min和max之间的成员 zrangebyscore key min max 返回成员member的score值 zscore key member 删除指定元素 zrem key member1 member2 删除权重在指定范围的元素 zremrangebyscore key min max

8、通用命令

查找键,参数⽀持正则表达式 keys pattern 判断键是否存在,如果存在返回1,不存在返回0 exists key1 查看键对应的value的类型 type key 删除键及对应的值 del key1 key2 设置过期时间,以秒为单位,如果没有指定过期时间则⼀直存在,直到使⽤DEL移除 expire key seconds 查看有效时间,以秒为单位 ttl key


最新回复(0)