Redis详解

本文介绍了Redis的特点及其作为高性能key-value数据库的优势,并详细讲解了五种主要数据类型(String、Hash、List、Set、Sorted Set)的操作命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Redis 简介

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 与其他 key - value 缓存产品有以下三个特点:

  • Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
  • Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
  • Redis支持数据的备份,即master-slave模式的数据备份。

Redis 优势

  • 性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
  • 丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
  • 原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
  • 丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

Redis高级(黄健宏版PDF)下载

链接: https://pan.baidu.com/s/1DEZv8-DQNkvPrf778w76_Q

 密码: 2fsx

Redis基础

1.Redis 数据类型

Redis常用五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

还支持其他数据类型:HyperLogLog、Geo、Pub/Sub、Redis Module、BloomFilter...好多

2.String(字符串)

string是redis最基本的类型,一个key对应一个value。

string类型是二进制安全的,意思是redis的string可以包含任何数据,string类型是Redis最基本的数据类型,


 
  1. set num 1

  2. get num

  3. mset num 2 num2 3 num3 4 设多值

  4. mget num num2 num3 取多值

  5. incr num / incrby num 数值计算,增加

  6. decr num / decrby num 数值计算,减少

  7. append num 00 字符串追加

  8. strlen num 返回值是长度

  9. exists num 返回值是1或0

  10. type num

3.Hash(哈希)

Redis hash 是一个键值(key=>value)对集合。

Redis hash是一个string类型的field和value的映射表,hash特别适合用于存储对象。


 
  1. hset / hmset

  2. hget / hmget

  3. hgetall 列出所有键值(返回字典)

  4. hkeys / hvals /hlen 返回键/值/键值对个数

  5. hexists key num

  6. hdel key num

4.List(列表)

Redis 列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)


 
  1. lpush key 'a' 'b' / rpush key 'c' 'd' 列表前后插入

  2. linsert key before 'a' 'm' / linsert key after 'e' 'k' 指定元素前后插入

  3. lset key 2 'po' 修改对应下标值

  4. lrange key 0 -1 列出所有列表中字符串

  5. lpop key / rpop key 删除字符串头/尾

  6. ltrim key 1 3 截取[1,3]之间字符串

  7. llen key 返回长度

  8. lindex key 1 返回对应值

5.Set(集合)

Redis的Set是string类型的无序集合。

集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。

 

6.zset(sorted set:有序集合)

Redis zset 和 set 一样也是string类型元素的集合,且不允许重复的成员。

不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。

zset的成员是唯一的,但分数(score)却可以重复。

7. 开启Redis服务


 
  1. sudo redis-server /etc/redis/redis.conf

  2. sudo service redis start

8 . 关闭服务


 
  1. sudo service redis stop

  2. sudo kill -9 进程id

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值